X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fconfig-netconf-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fconfignetconfconnector%2Foperations%2Feditconfig%2FDeleteEditConfigStrategy.java;h=c5fadb097f2d64f4d8b694e345f98dd71136d1c6;hb=bef0749bb2517eaae6a501be501e16a7d3905045;hp=ffe107f8ce726953f376e98327be466f80d69437;hpb=a92d9d6a21a0f6ca8d2153795721f500eaf29ee9;p=controller.git diff --git a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/DeleteEditConfigStrategy.java b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/DeleteEditConfigStrategy.java index ffe107f8ce..c5fadb097f 100644 --- a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/DeleteEditConfigStrategy.java +++ b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/operations/editconfig/DeleteEditConfigStrategy.java @@ -9,12 +9,13 @@ package org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig; import java.util.Map; - import javax.management.InstanceNotFoundException; import javax.management.ObjectName; - 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; import org.slf4j.LoggerFactory; @@ -22,19 +23,27 @@ public class DeleteEditConfigStrategy extends AbstractEditConfigStrategy { private static final Logger logger = LoggerFactory.getLogger(DeleteEditConfigStrategy.class); + @Override void handleMissingInstance(Map configuration, ConfigTransactionClient ta, - String module, String instance) { - throw new IllegalStateException("Unable to delete " + module + ":" + instance + " , ServiceInstance not found"); + String module, String instance, ServiceRegistryWrapper services) throws NetconfConfigHandlingException { + throw new NetconfConfigHandlingException(String.format("Unable to delete %s : %s , ServiceInstance not found", module ,instance), + NetconfDocumentedException.ErrorType.application, + NetconfDocumentedException.ErrorTag.operation_failed, + NetconfDocumentedException.ErrorSeverity.error); } @Override - void executeStrategy(Map configuration, ConfigTransactionClient ta, ObjectName on) { + void executeStrategy(Map configuration, ConfigTransactionClient ta, ObjectName on, ServiceRegistryWrapper services) throws NetconfConfigHandlingException { try { ta.destroyModule(on); logger.debug("ServiceInstance {} deleted successfully", on); } catch (InstanceNotFoundException e) { - throw new IllegalStateException("Unable to delete " + on, e); + throw new NetconfConfigHandlingException( + String.format("Unable to delete %s because of exception %s" + on, e.getMessage()), + NetconfDocumentedException.ErrorType.application, + NetconfDocumentedException.ErrorTag.operation_failed, + NetconfDocumentedException.ErrorSeverity.error); } } }