2 * Copyright (c) 2018 Inocybe Technologies and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.controller.cluster.datastore;
10 import static java.util.Objects.requireNonNull;
12 import com.google.common.annotations.VisibleForTesting;
13 import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
14 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
17 * Factory for creating DatastoreContextIntrospector instances.
19 * @author Thomas Pantelis
21 public class DatastoreContextIntrospectorFactory {
22 private final BindingNormalizedNodeSerializer serializer;
24 public DatastoreContextIntrospectorFactory(final BindingNormalizedNodeSerializer serializer) {
25 this.serializer = requireNonNull(serializer);
28 public DatastoreContextIntrospector newInstance(final LogicalDatastoreType datastoreType) {
29 return newInstance(DatastoreContext.newBuilder()
30 .logicalStoreType(datastoreType)
31 .tempFileDirectory("./data")
36 DatastoreContextIntrospector newInstance(final DatastoreContext context) {
37 return new DatastoreContextIntrospector(context, serializer);