X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fbinding%2Fimpl%2FBindingDOMMountPointListenerAdapter.java;h=f33148271f4ba85590a35452efd7dfc8899cce21;hb=9f1f923d51b8fe8df4ec570055c3d39eb79e8af6;hp=5698156934e398624b71838dcb990fff39db6c87;hpb=3ea96ea6cf7fb77ff3c984294c81f0997c667b1f;p=controller.git diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMMountPointListenerAdapter.java b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMMountPointListenerAdapter.java index 5698156934..f33148271f 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMMountPointListenerAdapter.java +++ b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMMountPointListenerAdapter.java @@ -7,6 +7,7 @@ */ package org.opendaylight.controller.md.sal.binding.impl; +import com.google.common.base.Optional; import org.opendaylight.controller.md.sal.binding.api.MountPointService.MountPointListener; import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService; import org.opendaylight.controller.sal.core.api.mount.MountProvisionListener; @@ -41,21 +42,30 @@ final class BindingDOMMountPointListenerAdapter im @Override public void onMountPointCreated(final YangInstanceIdentifier path) { try { - final InstanceIdentifier bindingPath = codec.toBinding(path).get(); + final InstanceIdentifier bindingPath = toBinding(path); listener.onMountPointCreated(bindingPath); } catch (final DeserializationException e) { - BindingDOMMountPointServiceAdapter.LOG.error("Unable to translate mountPoint path {}. Ommiting event.",path,e); + BindingDOMMountPointServiceAdapter.LOG.error("Unable to translate mountPoint path {}. Omitting event.",path,e); } } + private InstanceIdentifier toBinding(final YangInstanceIdentifier path) throws DeserializationException { + final Optional> instanceIdentifierOptional = codec.toBinding(path); + if(instanceIdentifierOptional.isPresent()) { + return instanceIdentifierOptional.get(); + } else { + throw new DeserializationException("Deserialization unsuccessful, " + instanceIdentifierOptional); + } + } + @Override public void onMountPointRemoved(final YangInstanceIdentifier path) { try { - final InstanceIdentifier bindingPath = codec.toBinding(path).get(); + final InstanceIdentifier bindingPath = toBinding(path); listener.onMountPointRemoved(bindingPath); } catch (final DeserializationException e) { - BindingDOMMountPointServiceAdapter.LOG.error("Unable to translate mountPoint path {}. Ommiting event.",path,e); + BindingDOMMountPointServiceAdapter.LOG.error("Unable to translate mountPoint path {}. Omitting event.",path,e); } } } \ No newline at end of file