import static com.google.common.base.Preconditions.checkState;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableMap.Builder;
+import com.google.common.collect.ClassToInstanceMap;
+import com.google.common.collect.ImmutableClassToInstanceMap;
+import com.google.common.collect.ImmutableClassToInstanceMap.Builder;
import java.util.EnumMap;
import java.util.Map;
import java.util.concurrent.atomic.AtomicLong;
private final AtomicLong txNum = new AtomicLong();
private final AtomicLong chainNum = new AtomicLong();
- private final Map<Class<? extends DOMDataBrokerExtension>, DOMDataBrokerExtension> extensions;
+ private final ClassToInstanceMap<DOMDataBrokerExtension> extensions;
+
private volatile AutoCloseable closeable;
protected AbstractDOMBroker(final Map<LogicalDatastoreType, DOMStore> datastores) {
super(datastores);
- Builder<Class<? extends DOMDataBrokerExtension>, DOMDataBrokerExtension> extBuilder = ImmutableMap.builder();
+ Builder<DOMDataBrokerExtension> extBuilder = ImmutableClassToInstanceMap.builder();
if (isSupported(datastores, DOMStoreTreeChangePublisher.class)) {
extBuilder.put(DOMDataTreeChangeService.class, new DOMDataTreeChangeService() {
@Override
import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
+import com.google.common.collect.ClassToInstanceMap;
import com.google.common.collect.ForwardingObject;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableMap.Builder;
+import com.google.common.collect.ImmutableClassToInstanceMap;
+import com.google.common.collect.ImmutableClassToInstanceMap.Builder;
import com.google.common.util.concurrent.CheckedFuture;
import com.google.common.util.concurrent.FluentFuture;
import com.google.common.util.concurrent.FutureCallback;
};
private final AbstractDOMBroker delegate;
- private final Map<Class<? extends DOMDataBrokerExtension>, DOMDataBrokerExtension> extensions;
+ private final ClassToInstanceMap<DOMDataBrokerExtension> extensions;
public LegacyDOMDataBrokerAdapter(AbstractDOMBroker delegate) {
this.delegate = delegate;
org.opendaylight.mdsal.dom.api.DOMDataBrokerExtension> delegateExtensions =
delegate.getSupportedExtensions();
- Builder<Class<? extends DOMDataBrokerExtension>, DOMDataBrokerExtension> extBuilder = ImmutableMap.builder();
+ Builder<DOMDataBrokerExtension> extBuilder = ImmutableClassToInstanceMap.builder();
final org.opendaylight.mdsal.dom.api.DOMDataTreeChangeService delegateTreeChangeService =
(org.opendaylight.mdsal.dom.api.DOMDataTreeChangeService) delegateExtensions.get(
org.opendaylight.mdsal.dom.api.DOMDataTreeChangeService.class);
import com.google.common.base.Preconditions;
import com.google.common.base.Throwables;
import com.google.common.collect.ForwardingObject;
-import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableClassToInstanceMap;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.ListenableFuture;
@Override
public Map<Class<? extends DOMDataTreeServiceExtension>, DOMDataTreeServiceExtension> getSupportedExtensions() {
- return ImmutableMap.of();
+ return ImmutableClassToInstanceMap.of();
}
@Nonnull