X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fconfig-netconf-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fconfignetconfconnector%2Foperations%2Feditconfig%2FMissingInstanceHandlingStrategy.java;h=c8adb2eae0d5d6472c9956cfc14c26faaa1e3dd3;hp=8ed9eb873146ffe38a2240ce49887a1d01bf7061;hb=8720a3f3498bbc6fab675431f4200d26641a8ec8;hpb=c9a6ef776ba6b7a2abaa2d566998787fa0b8c4ef diff --git a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/MissingInstanceHandlingStrategy.java b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/MissingInstanceHandlingStrategy.java index 8ed9eb8731..c8adb2eae0 100644 --- a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/MissingInstanceHandlingStrategy.java +++ b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/MissingInstanceHandlingStrategy.java @@ -9,6 +9,8 @@ package org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig; import org.opendaylight.controller.config.util.ConfigTransactionClient; +import org.opendaylight.controller.netconf.api.NetconfDocumentedException; +import org.opendaylight.controller.netconf.confignetconfconnector.exception.NetconfConfigHandlingException; import org.opendaylight.controller.netconf.confignetconfconnector.mapping.attributes.fromxml.AttributeConfigElement; import org.opendaylight.controller.netconf.confignetconfconnector.mapping.config.ServiceRegistryWrapper; import org.slf4j.Logger; @@ -24,19 +26,20 @@ public class MissingInstanceHandlingStrategy extends AbstractEditConfigStrategy @Override void handleMissingInstance(Map configuration, ConfigTransactionClient ta, - String module, String instance, ServiceRegistryWrapper services) { - ObjectName on = null; + String module, String instance, ServiceRegistryWrapper services) throws NetconfConfigHandlingException { try { - on = ta.createModule(module, instance); - logger.info("New instance for {} {} created under name {}", module, instance, on); + ObjectName on = ta.createModule(module, instance); + logger.trace("New instance for {} {} created under name {}", module, instance, on); } catch (InstanceAlreadyExistsException e1) { - throw new IllegalStateException("Unable to create instance for " + module + " : " + instance); + throw new NetconfConfigHandlingException(String.format("Unable to create instance for %s : %s.", module, instance), + NetconfDocumentedException.ErrorType.application, + NetconfDocumentedException.ErrorTag.operation_failed, + NetconfDocumentedException.ErrorSeverity.error); } } @Override void executeStrategy(Map configuration, ConfigTransactionClient ta, ObjectName objectName, ServiceRegistryWrapper services) { - return; } }