diff options
Diffstat (limited to 'infra/minimal-distribution')
5 files changed, 40 insertions, 7 deletions
diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/InitializationException.java b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/InitializationException.java new file mode 100644 index 000000000..0ed530cdb --- /dev/null +++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/InitializationException.java @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2016 Cisco and/or its affiliates. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.fd.honeycomb.infra.distro; + +/** + * Exception thrown when a failure occurs during HC initialization. + */ +public class InitializationException extends RuntimeException { + + public InitializationException(final String s) { + super(s); + } + + public InitializationException(final String s, final Throwable throwable) { + super(s, throwable); + } +} diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/Main.java b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/Main.java index 44b6cd35b..d43e33096 100644 --- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/Main.java +++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/Main.java @@ -66,6 +66,8 @@ public final class Main { // Json config attributes new CfgAttrsModule()); + private Main() {} + public static void main(String[] args) { // TODO add "clean" argument init(BASE_MODULES); @@ -107,7 +109,7 @@ public final class Main { server.start(); } catch (Exception e) { LOG.error("Unable to start Restconf", e); - throw new RuntimeException("Unable to start Restconf", e); + throw new InitializationException("Unable to start Restconf", e); } } @@ -157,4 +159,5 @@ public final class Main { System.gc(); } } + } diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryAdapter.java b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryAdapter.java index 4d488cfdb..8add9fdf0 100644 --- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryAdapter.java +++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryAdapter.java @@ -45,7 +45,6 @@ final class InitializerRegistryAdapter implements InitializerRegistry { LOG.info("Config initialization started"); final InitializerRegistry initializer = new InitializerRegistryImpl(pluginInitializers); - try { // Initialize contexts first so that other initializers can find any relevant mapping before initializing // configuration to what is already in VPP @@ -64,6 +63,4 @@ final class InitializerRegistryAdapter implements InitializerRegistry { LOG.info("Honeycomb initialized"); } - @Override - public void close() throws Exception {} } diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfSshServerProvider.java b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfSshServerProvider.java index 53be6b5d9..0b3be9f1f 100644 --- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfSshServerProvider.java +++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfSshServerProvider.java @@ -18,6 +18,7 @@ package io.fd.honeycomb.infra.distro.netconf; import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.google.inject.Inject; +import io.fd.honeycomb.infra.distro.InitializationException; import io.fd.honeycomb.infra.distro.ProviderTrait; import io.fd.honeycomb.infra.distro.cfgattrs.HoneycombConfiguration; import io.netty.channel.ChannelFuture; @@ -137,12 +138,12 @@ public final class NetconfSshServerProvider extends ProviderTrait<NetconfSshServ sshProxyServer.bind(sshConfigBuilder.createSshProxyServerConfiguration()); LOG.info("Netconf SSH endpoint started successfully at {}", bindingAddress); } catch (final IOException e) { - throw new RuntimeException("Unable to start SSH netconf server", e); + throw new InitializationException("Unable to start SSH netconf server", e); } } else { LOG.warn("Unable to start SSH netconf server at {}", bindingAddress, future.cause()); - throw new RuntimeException("Unable to start SSH netconf server", future.cause()); + throw new InitializationException("Unable to start SSH netconf server", future.cause()); } } diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfTcpServerProvider.java b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfTcpServerProvider.java index d6ab47446..66b82eed9 100644 --- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfTcpServerProvider.java +++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/netconf/NetconfTcpServerProvider.java @@ -17,6 +17,7 @@ package io.fd.honeycomb.infra.distro.netconf; import com.google.inject.Inject; +import io.fd.honeycomb.infra.distro.InitializationException; import io.fd.honeycomb.infra.distro.ProviderTrait; import io.fd.honeycomb.infra.distro.cfgattrs.HoneycombConfiguration; import io.netty.channel.ChannelFuture; @@ -78,7 +79,7 @@ public final class NetconfTcpServerProvider extends ProviderTrait<NetconfTcpServ LOG.info("Netconf TCP endpoint started successfully at {}", unresolved); } else { LOG.warn("Unable to start TCP netconf server at {}", unresolved, future.cause()); - throw new RuntimeException("Unable to start TCP netconf server", future.cause()); + throw new InitializationException("Unable to start TCP netconf server", future.cause()); } } } |