X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-dom-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fdom%2Fbroker%2Fspi%2Fmount%2FSimpleDOMMountPoint.java;fp=opendaylight%2Fmd-sal%2Fsal-dom-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fdom%2Fbroker%2Fspi%2Fmount%2FSimpleDOMMountPoint.java;h=48a6878327b6f2850a6a8786e8ec40af06191387;hb=a2f734db3ee72f6074e50e950408264779dabcc5;hp=0000000000000000000000000000000000000000;hpb=f8225a74b7c11db1ebf77ab9de998c2e953f8ed8;p=controller.git diff --git a/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/md/sal/dom/broker/spi/mount/SimpleDOMMountPoint.java b/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/md/sal/dom/broker/spi/mount/SimpleDOMMountPoint.java new file mode 100644 index 0000000000..48a6878327 --- /dev/null +++ b/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/md/sal/dom/broker/spi/mount/SimpleDOMMountPoint.java @@ -0,0 +1,41 @@ +package org.opendaylight.controller.md.sal.dom.broker.spi.mount; + +import org.opendaylight.controller.md.sal.dom.api.DOMMountPoint; +import org.opendaylight.controller.md.sal.dom.api.DOMService; +import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier; +import org.opendaylight.yangtools.yang.model.api.SchemaContext; + +import com.google.common.base.Optional; +import com.google.common.collect.ClassToInstanceMap; +import com.google.common.collect.ImmutableClassToInstanceMap; + +public class SimpleDOMMountPoint implements DOMMountPoint { + + private final InstanceIdentifier identifier; + private final ClassToInstanceMap services; + private final SchemaContext schemaContext; + + public static final SimpleDOMMountPoint create(final InstanceIdentifier identifier, final ClassToInstanceMap services, final SchemaContext ctx) { + return new SimpleDOMMountPoint(identifier, services, ctx); + } + private SimpleDOMMountPoint(final InstanceIdentifier identifier, final ClassToInstanceMap services, final SchemaContext ctx) { + this.identifier = identifier; + this.services = ImmutableClassToInstanceMap.copyOf(services); + this.schemaContext = ctx; + } + + @Override + public InstanceIdentifier getIdentifier() { + return identifier; + } + + @Override + public SchemaContext getSchemaContext() { + return schemaContext; + } + + @Override + public Optional getService(final Class cls) { + return Optional.fromNullable(services.getInstance(cls)); + } +}