Make OvsdbClient return TypedDatabaseSchemas 83/86083/10
authorRobert Varga <robert.varga@pantheon.tech>
Sun, 1 Dec 2019 11:17:01 +0000 (12:17 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 2 Dec 2019 11:20:08 +0000 (12:20 +0100)
Centralizing type-safety in client is beneficial in that the users
can use type mapping directly, without having to go through
TyperUtils.

Change-Id: I0f620e515ecb7f9bd140155c046a2c4bf9dc447f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
hwvtepsouthbound/hwvtepsouthbound-impl/src/main/java/org/opendaylight/ovsdb/hwvtepsouthbound/HwvtepConnectionInstance.java
hwvtepsouthbound/hwvtepsouthbound-impl/src/test/java/org/opendaylight/ovsdb/hwvtepsouthbound/DataChangeListenerTestBase.java
library/impl/src/main/java/org/opendaylight/ovsdb/lib/OvsdbClient.java
library/impl/src/main/java/org/opendaylight/ovsdb/lib/impl/OvsdbClientImpl.java
southbound/southbound-impl/src/main/java/org/opendaylight/ovsdb/southbound/OvsdbConnectionInstance.java
southbound/southbound-impl/src/test/java/org/opendaylight/ovsdb/southbound/OvsdbConnectionInstanceTest.java

index b10e8781cf97902574daebc7cba782ddcd5d27c2..1103fe7da3b2f8d584eafc77827a53a12dcd51de 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.ovsdb.hwvtepsouthbound;
 
 import com.google.common.annotations.VisibleForTesting;
@@ -51,6 +50,7 @@ import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
 import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
 import org.opendaylight.ovsdb.lib.schema.TableSchema;
 import org.opendaylight.ovsdb.lib.schema.typed.TypedBaseTable;
+import org.opendaylight.ovsdb.lib.schema.typed.TypedDatabaseSchema;
 import org.opendaylight.ovsdb.utils.mdsal.utils.TransactionHistory;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepGlobalAugmentation;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.ConnectionInfo;
@@ -85,8 +85,9 @@ public class HwvtepConnectionInstance {
     private TransactionHistory controllerTxHistory;
     private TransactionHistory deviceUpdateHistory;
 
-    HwvtepConnectionInstance(HwvtepConnectionManager hwvtepConnectionManager, ConnectionInfo key, OvsdbClient client,
-                              InstanceIdentifier<Node> iid, TransactionInvoker txInvoker, DataBroker dataBroker) {
+    HwvtepConnectionInstance(final HwvtepConnectionManager hwvtepConnectionManager, final ConnectionInfo key,
+            final OvsdbClient client, final InstanceIdentifier<Node> iid, final TransactionInvoker txInvoker,
+            final DataBroker dataBroker) {
         this.hwvtepConnectionManager = hwvtepConnectionManager;
         this.connectionInfo = key;
         this.client = client;
@@ -106,13 +107,13 @@ public class HwvtepConnectionInstance {
             LOG.info("Job waiting for reconciliation {}", nodeId);
             Futures.addCallback(reconciliationFt, new FutureCallback<Boolean>() {
                 @Override
-                public void onSuccess(Boolean notUsed) {
+                public void onSuccess(final Boolean notUsed) {
                     LOG.info("Running the job waiting for reconciliation {}", nodeId);
                     transact(command, false);
                 }
 
                 @Override
-                public void onFailure(Throwable throwable) {
+                public void onFailure(final Throwable throwable) {
                     LOG.info("Running the job waiting for reconciliation {}", nodeId);
                     transact(command, false);
                 }
@@ -126,7 +127,7 @@ public class HwvtepConnectionInstance {
         }
     }
 
-    public synchronized void transact(TransactCommand command, boolean reconcile) {
+    public synchronized void transact(final TransactCommand command, final boolean reconcile) {
         try {
             for (TransactInvoker transactInvoker : transactInvokers.values()) {
                 transactInvoker.invoke(command);
@@ -138,7 +139,8 @@ public class HwvtepConnectionInstance {
         }
     }
 
-    public ListenableFuture<List<OperationResult>> transact(DatabaseSchema dbSchema, List<Operation> operations) {
+    public ListenableFuture<List<OperationResult>> transact(final DatabaseSchema dbSchema,
+            final List<Operation> operations) {
         return client.transact(dbSchema, operations);
     }
 
@@ -178,7 +180,7 @@ public class HwvtepConnectionInstance {
         }
     }
 
-    private void monitorAllTables(String database, DatabaseSchema dbSchema) {
+    private void monitorAllTables(final String database, final DatabaseSchema dbSchema) {
         Set<String> tables = dbSchema.getTables();
         if (tables != null) {
             List<MonitorRequest> monitorRequests = new ArrayList<>();
@@ -224,37 +226,39 @@ public class HwvtepConnectionInstance {
         return client.getDatabases();
     }
 
-    public ListenableFuture<DatabaseSchema> getSchema(String database) {
+    public ListenableFuture<TypedDatabaseSchema> getSchema(final String database) {
         return client.getSchema(database);
     }
 
-    public TransactionBuilder transactBuilder(DatabaseSchema dbSchema) {
+    public TransactionBuilder transactBuilder(final DatabaseSchema dbSchema) {
         return client.transactBuilder(dbSchema);
     }
 
-    public <E extends TableSchema<E>> TableUpdates monitor(DatabaseSchema schema,
-                    List<MonitorRequest> monitorRequests, MonitorCallBack monitorCallBack) {
+    public <E extends TableSchema<E>> TableUpdates monitor(final DatabaseSchema schema,
+                    final List<MonitorRequest> monitorRequests, final MonitorCallBack monitorCallBack) {
         return client.monitor(schema, monitorRequests, monitorCallBack);
     }
 
-    public <E extends TableSchema<E>> TableUpdates monitor(DatabaseSchema schema,
-            List<MonitorRequest> monitorRequests, MonitorHandle monitorHandle, MonitorCallBack monitorCallBack) {
+    public <E extends TableSchema<E>> TableUpdates monitor(final DatabaseSchema schema,
+            final List<MonitorRequest> monitorRequests, final MonitorHandle monitorHandle,
+            final MonitorCallBack monitorCallBack) {
         return null;
     }
 
-    public void cancelMonitor(MonitorHandle handler) {
+    public void cancelMonitor(final MonitorHandle handler) {
         client.cancelMonitor(handler);
     }
 
-    public void lock(String lockId, LockAquisitionCallback lockedCallBack, LockStolenCallback stolenCallback) {
+    public void lock(final String lockId, final LockAquisitionCallback lockedCallBack,
+            final LockStolenCallback stolenCallback) {
         client.lock(lockId, lockedCallBack, stolenCallback);
     }
 
-    public ListenableFuture<Boolean> steal(String lockId) {
+    public ListenableFuture<Boolean> steal(final String lockId) {
         return client.steal(lockId);
     }
 
-    public ListenableFuture<Boolean> unLock(String lockId) {
+    public ListenableFuture<Boolean> unLock(final String lockId) {
         return client.unLock(lockId);
     }
 
@@ -270,19 +274,19 @@ public class HwvtepConnectionInstance {
         client.disconnect();
     }
 
-    public DatabaseSchema getDatabaseSchema(String dbName) {
+    public DatabaseSchema getDatabaseSchema(final String dbName) {
         return client.getDatabaseSchema(dbName);
     }
 
-    public <T extends TypedBaseTable<?>> T createTypedRowWrapper(Class<T> klazz) {
+    public <T extends TypedBaseTable<?>> T createTypedRowWrapper(final Class<T> klazz) {
         return client.createTypedRowWrapper(klazz);
     }
 
-    public <T extends TypedBaseTable<?>> T createTypedRowWrapper(DatabaseSchema dbSchema, Class<T> klazz) {
+    public <T extends TypedBaseTable<?>> T createTypedRowWrapper(final DatabaseSchema dbSchema, final Class<T> klazz) {
         return client.createTypedRowWrapper(dbSchema, klazz);
     }
 
-    public <T extends TypedBaseTable<?>> T getTypedRowWrapper(Class<T> klazz, Row<GenericTableSchema> row) {
+    public <T extends TypedBaseTable<?>> T getTypedRowWrapper(final Class<T> klazz, final Row<GenericTableSchema> row) {
         return client.getTypedRowWrapper(klazz, row);
     }
 
@@ -290,7 +294,7 @@ public class HwvtepConnectionInstance {
         return connectionInfo;
     }
 
-    public void setMDConnectionInfo(ConnectionInfo key) {
+    public void setMDConnectionInfo(final ConnectionInfo key) {
         this.connectionInfo = key;
     }
 
@@ -307,7 +311,7 @@ public class HwvtepConnectionInstance {
         return getNodeKey().getNodeId();
     }
 
-    public void setInstanceIdentifier(InstanceIdentifier<Node> iid) {
+    public void setInstanceIdentifier(final InstanceIdentifier<Node> iid) {
         this.instanceIdentifier = iid;
         hwvtepConnectionManager.putConnectionInstance(instanceIdentifier, this);
     }
@@ -316,11 +320,11 @@ public class HwvtepConnectionInstance {
         return this.connectedEntity;
     }
 
-    public void setConnectedEntity(Entity entity) {
+    public void setConnectedEntity(final Entity entity) {
         this.connectedEntity = entity;
     }
 
-    public Boolean hasOvsdbClient(OvsdbClient otherClient) {
+    public Boolean hasOvsdbClient(final OvsdbClient otherClient) {
         return client.equals(otherClient);
     }
 
@@ -328,13 +332,14 @@ public class HwvtepConnectionInstance {
         return hasDeviceOwnership;
     }
 
-    public void setHasDeviceOwnership(Boolean hasDeviceOwnership) {
+    public void setHasDeviceOwnership(final Boolean hasDeviceOwnership) {
         if (hasDeviceOwnership != null) {
             this.hasDeviceOwnership = hasDeviceOwnership;
         }
     }
 
-    public void setDeviceOwnershipCandidateRegistration(@NonNull EntityOwnershipCandidateRegistration registration) {
+    public void setDeviceOwnershipCandidateRegistration(
+            @NonNull final EntityOwnershipCandidateRegistration registration) {
         this.deviceOwnershipCandidateRegistration = registration;
     }
 
@@ -345,7 +350,7 @@ public class HwvtepConnectionInstance {
         }
     }
 
-    public void setHwvtepGlobalAugmentation(HwvtepGlobalAugmentation hwvtepGlobalData) {
+    public void setHwvtepGlobalAugmentation(final HwvtepGlobalAugmentation hwvtepGlobalData) {
         this.initialCreatedData = hwvtepGlobalData;
     }
 
@@ -374,7 +379,7 @@ public class HwvtepConnectionInstance {
         return callback;
     }
 
-    public void setCallback(MonitorCallBack callback) {
+    public void setCallback(final MonitorCallBack callback) {
         this.callback = callback;
     }
 
@@ -382,7 +387,7 @@ public class HwvtepConnectionInstance {
         return controllerTxHistory;
     }
 
-    public void setControllerTxHistory(TransactionHistory controllerTxLog) {
+    public void setControllerTxHistory(final TransactionHistory controllerTxLog) {
         deviceInfo.setControllerTxHistory(controllerTxLog);
         this.controllerTxHistory = controllerTxLog;
     }
@@ -391,7 +396,7 @@ public class HwvtepConnectionInstance {
         return deviceUpdateHistory;
     }
 
-    public void setDeviceUpdateHistory(TransactionHistory deviceUpdateLog) {
+    public void setDeviceUpdateHistory(final TransactionHistory deviceUpdateLog) {
         deviceInfo.setDeviceUpdateHistory(deviceUpdateLog);
         this.deviceUpdateHistory = deviceUpdateLog;
     }
index 42b16c5ee66c43fd5b8a2e7d58217de0b3e715fc..5a3355c4f818872d003b9cc8ea2d10ba550fab7b 100644 (file)
@@ -5,11 +5,10 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.ovsdb.hwvtepsouthbound;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyString;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.spy;
@@ -49,6 +48,7 @@ import org.opendaylight.ovsdb.lib.operations.Update;
 import org.opendaylight.ovsdb.lib.operations.Where;
 import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
 import org.opendaylight.ovsdb.lib.schema.typed.TypedBaseTable;
+import org.opendaylight.ovsdb.lib.schema.typed.TypedDatabaseSchema;
 import org.opendaylight.ovsdb.utils.mdsal.utils.TransactionHistory;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepGlobalAugmentation;
@@ -80,8 +80,8 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
 
     EntityOwnershipService entityOwnershipService;
     OvsdbClient ovsdbClient;
-    DatabaseSchema dbSchema;
-    ListenableFuture<DatabaseSchema> listenableDbSchema = mock(ListenableFuture.class);
+    TypedDatabaseSchema dbSchema;
+    ListenableFuture<TypedDatabaseSchema> listenableDbSchema = mock(ListenableFuture.class);
     TransactionInvoker transactionInvoker;
     OvsdbConnectionInfo connectionInfo;
     Operations operations;
@@ -131,8 +131,8 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
         deleteNode(CONFIGURATION);
     }
 
-    static final void setFinalStatic(Class<?> cls, String fieldName, Object newValue) throws SecurityException,
-            ReflectiveOperationException {
+    static final void setFinalStatic(final Class<?> cls, final String fieldName, final Object newValue)
+            throws SecurityException, ReflectiveOperationException {
         Field[] fields = FieldUtils.getAllFields(cls);
         for (Field field : fields) {
             if (fieldName.equals(field.getName())) {
@@ -151,8 +151,8 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
                 "hwvtep_schema.json")) {
             ObjectMapper mapper = new ObjectMapper();
             JsonNode jsonNode = mapper.readTree(resourceAsStream);
-            dbSchema = DatabaseSchema.fromJson(HwvtepSchemaConstants.HARDWARE_VTEP,
-                    jsonNode.get("result"));
+            dbSchema = TypedDatabaseSchema.of(DatabaseSchema.fromJson(HwvtepSchemaConstants.HARDWARE_VTEP,
+                    jsonNode.get("result")));
             listenableDbSchema = mock(ListenableFuture.class);
             doReturn(dbSchema).when(listenableDbSchema).get();
         } catch (IOException | ExecutionException | InterruptedException e) {
@@ -222,7 +222,7 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
         doReturn(ft).when(ovsdbClient).transact(any(DatabaseSchema.class), transactCaptor.capture());
     }
 
-    void addNode(LogicalDatastoreType logicalDatastoreType) throws Exception {
+    void addNode(final LogicalDatastoreType logicalDatastoreType) throws Exception {
         NodeBuilder nodeBuilder = prepareNode(nodeIid);
         HwvtepGlobalAugmentationBuilder builder = new HwvtepGlobalAugmentationBuilder();
         nodeBuilder.addAugmentation(HwvtepGlobalAugmentation.class, builder.build());
@@ -231,14 +231,14 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
         transaction.submit();
     }
 
-    void deleteNode(LogicalDatastoreType logicalDatastoreType) {
+    void deleteNode(final LogicalDatastoreType logicalDatastoreType) {
         ReadWriteTransaction tx = dataBroker.newReadWriteTransaction();
         tx.delete(logicalDatastoreType, nodeIid);
         tx.submit();
     }
 
-    Node addData(LogicalDatastoreType logicalDatastoreType, Class<? extends DataObject> dataObject,
-            String[]... data) {
+    Node addData(final LogicalDatastoreType logicalDatastoreType, final Class<? extends DataObject> dataObject,
+            final String[]... data) {
         NodeBuilder nodeBuilder = prepareNode(nodeIid);
         HwvtepGlobalAugmentationBuilder builder = new HwvtepGlobalAugmentationBuilder();
         if (LogicalSwitches.class == dataObject) {
@@ -257,8 +257,8 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
         return mergeNode(logicalDatastoreType, nodeIid, nodeBuilder);
     }
 
-    void deleteData(LogicalDatastoreType logicalDatastoreType, Class<? extends DataObject> dataObject,
-            String[]... data) {
+    void deleteData(final LogicalDatastoreType logicalDatastoreType, final Class<? extends DataObject> dataObject,
+            final String[]... data) {
         NodeBuilder nodeBuilder = prepareNode(nodeIid);
         ReadWriteTransaction tx = dataBroker.newReadWriteTransaction();
         HwvtepGlobalAugmentationBuilder builder = new HwvtepGlobalAugmentationBuilder();
@@ -293,13 +293,14 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
         tx.submit();
     }
 
-    NodeBuilder prepareNode(InstanceIdentifier<Node> iid) {
+    NodeBuilder prepareNode(final InstanceIdentifier<Node> iid) {
         NodeBuilder nodeBuilder = new NodeBuilder();
         nodeBuilder.setNodeId(iid.firstKeyOf(Node.class).getNodeId());
         return nodeBuilder;
     }
 
-    Node mergeNode(LogicalDatastoreType datastoreType, InstanceIdentifier<Node> id, NodeBuilder nodeBuilder) {
+    Node mergeNode(final LogicalDatastoreType datastoreType, final InstanceIdentifier<Node> id,
+            final NodeBuilder nodeBuilder) {
         Node node = nodeBuilder.build();
         WriteTransaction transaction = dataBroker.newWriteOnlyTransaction();
         transaction.merge(datastoreType, id, node, WriteTransaction.CREATE_MISSING_PARENTS);
@@ -307,7 +308,7 @@ public class DataChangeListenerTestBase extends AbstractDataBrokerTest {
         return node;
     }
 
-    public InstanceIdentifier<Node> createInstanceIdentifier(String nodeIdString) {
+    public InstanceIdentifier<Node> createInstanceIdentifier(final String nodeIdString) {
         NodeId nodeId = new NodeId(new Uri(nodeIdString));
         NodeKey nodeKey = new NodeKey(nodeId);
         TopologyKey topoKey = new TopologyKey(HwvtepSouthboundConstants.HWVTEP_TOPOLOGY_ID);
index 6c53193cab4e8d7a02244b0a8a7e514853629f19..9e9545ed4595e728bbd0741532a922f4aea057a3 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.ovsdb.lib;
 
 import com.google.common.util.concurrent.ListenableFuture;
@@ -20,6 +19,7 @@ import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
 import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
 import org.opendaylight.ovsdb.lib.schema.TableSchema;
 import org.opendaylight.ovsdb.lib.schema.typed.TypedBaseTable;
+import org.opendaylight.ovsdb.lib.schema.typed.TypedDatabaseSchema;
 
 /**
  * The main interface to interact with a device speaking ovsdb protocol in an asynchronous fashion and hence most
@@ -38,7 +38,7 @@ public interface OvsdbClient {
      * @param database name of the database schema
      * @return DatabaseSchema future
      */
-    ListenableFuture<DatabaseSchema> getSchema(String database);
+    ListenableFuture<TypedDatabaseSchema> getSchema(String database);
 
     /**
      * Allows for a mini DSL way of collecting the transactions to be executed against the ovsdb instance.
@@ -161,7 +161,7 @@ public interface OvsdbClient {
 
     void disconnect();
 
-    DatabaseSchema getDatabaseSchema(String dbName);
+    TypedDatabaseSchema getDatabaseSchema(String dbName);
 
     /**
      * User friendly convenient methods that make use of TyperUtils.getTypedRowWrapper to create a Typed Row Proxy
index f656ca2d742253ab8fb4d9a28b90aad034cac902..d7d8b4ce9b4b61424ae23b97a30558d408c7da6e 100644 (file)
@@ -320,7 +320,7 @@ public class OvsdbClientImpl implements OvsdbClient {
     }
 
     @Override
-    public ListenableFuture<DatabaseSchema> getSchema(final String database) {
+    public ListenableFuture<TypedDatabaseSchema> getSchema(final String database) {
         final TypedDatabaseSchema existing = schemas.get(database);
         if (existing != null) {
             return Futures.immediateFuture(existing);
index 299c3928b236105036ac03f1d28d333d32b18d03..b4ed06e8c29236375908981094d33919a0c6fa05 100644 (file)
@@ -44,6 +44,7 @@ import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
 import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
 import org.opendaylight.ovsdb.lib.schema.TableSchema;
 import org.opendaylight.ovsdb.lib.schema.typed.TypedBaseTable;
+import org.opendaylight.ovsdb.lib.schema.typed.TypedDatabaseSchema;
 import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
 import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
 import org.opendaylight.ovsdb.southbound.ovsdb.transact.BridgeOperationalState;
@@ -78,8 +79,8 @@ public class OvsdbConnectionInstance {
     private EntityOwnershipCandidateRegistration deviceOwnershipCandidateRegistration;
     private OvsdbNodeAugmentation initialCreateData = null;
 
-    OvsdbConnectionInstance(ConnectionInfo key, OvsdbClient client, TransactionInvoker txInvoker,
-                            InstanceIdentifier<Node> iid) {
+    OvsdbConnectionInstance(final ConnectionInfo key, final OvsdbClient client, final TransactionInvoker txInvoker,
+                            final InstanceIdentifier<Node> iid) {
         this.connectionInfo = key;
         this.client = client;
         this.txInvoker = txInvoker;
@@ -95,8 +96,8 @@ public class OvsdbConnectionInstance {
      * @param events The events to process.
      * @param instanceIdentifierCodec The instance identifier codec to use.
      */
-    public void transact(TransactCommand command, BridgeOperationalState state,
-            DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
+    public void transact(final TransactCommand command, final BridgeOperationalState state,
+            final DataChangeEvent events, final InstanceIdentifierCodec instanceIdentifierCodec) {
         for (TransactInvoker transactInvoker : transactInvokers.values()) {
             transactInvoker.invoke(command, state, events, instanceIdentifierCodec);
         }
@@ -110,19 +111,20 @@ public class OvsdbConnectionInstance {
      * @param modifications The modifications to process.
      * @param instanceIdentifierCodec The instance identifier codec to use.
      */
-    public void transact(TransactCommand command, BridgeOperationalState state,
-            Collection<DataTreeModification<Node>> modifications, InstanceIdentifierCodec instanceIdentifierCodec) {
+    public void transact(final TransactCommand command, final BridgeOperationalState state,
+            final Collection<DataTreeModification<Node>> modifications,
+            final InstanceIdentifierCodec instanceIdentifierCodec) {
         for (TransactInvoker transactInvoker : transactInvokers.values()) {
             transactInvoker.invoke(command, state, modifications, instanceIdentifierCodec);
         }
     }
 
     public ListenableFuture<List<OperationResult>> transact(
-            DatabaseSchema dbSchema, List<Operation> operations) {
+            final DatabaseSchema dbSchema, final List<Operation> operations) {
         return client.transact(dbSchema, operations);
     }
 
-    public void registerCallbacks(InstanceIdentifierCodec instanceIdentifierCodec) {
+    public void registerCallbacks(final InstanceIdentifierCodec instanceIdentifierCodec) {
         if (this.callback == null) {
             if (this.initialCreateData != null) {
                 this.updateConnectionAttributes(instanceIdentifierCodec);
@@ -159,7 +161,7 @@ public class OvsdbConnectionInstance {
     }
 
     @VisibleForTesting
-    void monitorTables(String database, DatabaseSchema dbSchema) {
+    void monitorTables(final String database, final DatabaseSchema dbSchema) {
         Set<String> tables = dbSchema.getTables();
         if (tables != null) {
             List<MonitorRequest> monitorRequests = new ArrayList<>();
@@ -185,7 +187,7 @@ public class OvsdbConnectionInstance {
         }
     }
 
-    private void updateConnectionAttributes(InstanceIdentifierCodec instanceIdentifierCodec) {
+    private void updateConnectionAttributes(final InstanceIdentifierCodec instanceIdentifierCodec) {
         LOG.debug("Update attributes of ovsdb node ip: {} port: {}",
                     this.initialCreateData.getConnectionInfo().getRemoteIp(),
                     this.initialCreateData.getConnectionInfo().getRemotePort());
@@ -234,15 +236,15 @@ public class OvsdbConnectionInstance {
         }
     }
 
-    private void stampInstanceIdentifier(TransactionBuilder transaction,InstanceIdentifier<Node> iid,
-            InstanceIdentifierCodec instanceIdentifierCodec) {
+    private static void stampInstanceIdentifier(final TransactionBuilder transaction,final InstanceIdentifier<Node> iid,
+            final InstanceIdentifierCodec instanceIdentifierCodec) {
         OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(transaction.getDatabaseSchema(), OpenVSwitch.class);
         ovs.setExternalIds(Collections.emptyMap());
         TransactUtils.stampInstanceIdentifier(transaction, iid, ovs.getSchema(), ovs.getExternalIdsColumn().getSchema(),
                 instanceIdentifierCodec);
     }
 
-    private void invoke(TransactionBuilder txBuilder) {
+    private static void invoke(final TransactionBuilder txBuilder) {
         ListenableFuture<List<OperationResult>> result = txBuilder.execute();
         LOG.debug("invoke: tb: {}", txBuilder);
         if (txBuilder.getOperations().size() > 0) {
@@ -256,45 +258,44 @@ public class OvsdbConnectionInstance {
         }
     }
 
-
     public ListenableFuture<List<String>> getDatabases() {
         return client.getDatabases();
     }
 
-    public ListenableFuture<DatabaseSchema> getSchema(String database) {
+    public ListenableFuture<TypedDatabaseSchema> getSchema(final String database) {
         return client.getSchema(database);
     }
 
-    public TransactionBuilder transactBuilder(DatabaseSchema dbSchema) {
+    public TransactionBuilder transactBuilder(final DatabaseSchema dbSchema) {
         return client.transactBuilder(dbSchema);
     }
 
     public <E extends TableSchema<E>> TableUpdates monitor(
-            DatabaseSchema schema, List<MonitorRequest> monitorRequests,
-            MonitorHandle monitorHandle, MonitorCallBack callbackArgument) {
+            final DatabaseSchema schema, final List<MonitorRequest> monitorRequests,
+            final MonitorHandle monitorHandle, final MonitorCallBack callbackArgument) {
         return null;
     }
 
     public <E extends TableSchema<E>> TableUpdates monitor(
-            DatabaseSchema schema, List<MonitorRequest> monitorRequests,
-            MonitorCallBack callbackArgument) {
+            final DatabaseSchema schema, final List<MonitorRequest> monitorRequests,
+            final MonitorCallBack callbackArgument) {
         return client.monitor(schema, monitorRequests, callbackArgument);
     }
 
-    public void cancelMonitor(MonitorHandle handler) {
+    public void cancelMonitor(final MonitorHandle handler) {
         client.cancelMonitor(handler);
     }
 
-    public void lock(String lockId, LockAquisitionCallback lockedCallBack,
-            LockStolenCallback stolenCallback) {
+    public void lock(final String lockId, final LockAquisitionCallback lockedCallBack,
+            final LockStolenCallback stolenCallback) {
         client.lock(lockId, lockedCallBack, stolenCallback);
     }
 
-    public ListenableFuture<Boolean> steal(String lockId) {
+    public ListenableFuture<Boolean> steal(final String lockId) {
         return client.steal(lockId);
     }
 
-    public ListenableFuture<Boolean> unLock(String lockId) {
+    public ListenableFuture<Boolean> unLock(final String lockId) {
         return client.unLock(lockId);
     }
 
@@ -306,21 +307,21 @@ public class OvsdbConnectionInstance {
         client.disconnect();
     }
 
-    public DatabaseSchema getDatabaseSchema(String dbName) {
+    public DatabaseSchema getDatabaseSchema(final String dbName) {
         return client.getDatabaseSchema(dbName);
     }
 
-    public <T extends TypedBaseTable<?>> T createTypedRowWrapper(Class<T> klazz) {
+    public <T extends TypedBaseTable<?>> T createTypedRowWrapper(final Class<T> klazz) {
         return client.createTypedRowWrapper(klazz);
     }
 
     public <T extends TypedBaseTable<?>> T createTypedRowWrapper(
-            DatabaseSchema dbSchema, Class<T> klazz) {
+            final DatabaseSchema dbSchema, final Class<T> klazz) {
         return client.createTypedRowWrapper(dbSchema, klazz);
     }
 
-    public <T extends TypedBaseTable<?>> T getTypedRowWrapper(Class<T> klazz,
-            Row<GenericTableSchema> row) {
+    public <T extends TypedBaseTable<?>> T getTypedRowWrapper(final Class<T> klazz,
+            final Row<GenericTableSchema> row) {
         return client.getTypedRowWrapper(klazz, row);
     }
 
@@ -332,7 +333,7 @@ public class OvsdbConnectionInstance {
         return connectionInfo;
     }
 
-    public void setMDConnectionInfo(ConnectionInfo key) {
+    public void setMDConnectionInfo(final ConnectionInfo key) {
         this.connectionInfo = key;
     }
 
@@ -348,7 +349,7 @@ public class OvsdbConnectionInstance {
         return getNodeKey().getNodeId();
     }
 
-    public void setInstanceIdentifier(InstanceIdentifier<Node> iid) {
+    public void setInstanceIdentifier(final InstanceIdentifier<Node> iid) {
         this.instanceIdentifier = iid;
     }
 
@@ -356,11 +357,11 @@ public class OvsdbConnectionInstance {
         return this.connectedEntity;
     }
 
-    public void setConnectedEntity(Entity entity) {
+    public void setConnectedEntity(final Entity entity) {
         this.connectedEntity = entity;
     }
 
-    public Boolean hasOvsdbClient(OvsdbClient otherClient) {
+    public Boolean hasOvsdbClient(final OvsdbClient otherClient) {
         return client.equals(otherClient);
     }
 
@@ -368,7 +369,7 @@ public class OvsdbConnectionInstance {
         return hasDeviceOwnership;
     }
 
-    public void setHasDeviceOwnership(Boolean hasDeviceOwnership) {
+    public void setHasDeviceOwnership(final Boolean hasDeviceOwnership) {
         if (hasDeviceOwnership != null) {
             LOG.debug("Ownership status for {} old {} new {}",
                     instanceIdentifier, this.hasDeviceOwnership, hasDeviceOwnership);
@@ -376,7 +377,8 @@ public class OvsdbConnectionInstance {
         }
     }
 
-    public void setDeviceOwnershipCandidateRegistration(@NonNull EntityOwnershipCandidateRegistration registration) {
+    public void setDeviceOwnershipCandidateRegistration(
+            @NonNull final EntityOwnershipCandidateRegistration registration) {
         this.deviceOwnershipCandidateRegistration = registration;
     }
 
@@ -391,7 +393,7 @@ public class OvsdbConnectionInstance {
         return this.initialCreateData;
     }
 
-    public void setOvsdbNodeAugmentation(OvsdbNodeAugmentation ovsdbNodeCreateData) {
+    public void setOvsdbNodeAugmentation(final OvsdbNodeAugmentation ovsdbNodeCreateData) {
         this.initialCreateData = ovsdbNodeCreateData;
     }
 
index 2bd259ee707a29886e0d9f8a94c8021b2a073293..0777956f09fc17b4e9a93cb1d3df59908743eb7c 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.ovsdb.southbound;
 
 import static org.junit.Assert.assertEquals;
@@ -45,6 +44,7 @@ import org.opendaylight.ovsdb.lib.operations.OperationResult;
 import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
 import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
 import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
+import org.opendaylight.ovsdb.lib.schema.typed.TypedDatabaseSchema;
 import org.opendaylight.ovsdb.southbound.ovsdb.transact.BridgeOperationalState;
 import org.opendaylight.ovsdb.southbound.ovsdb.transact.DataChangeEvent;
 import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactCommand;
@@ -187,7 +187,7 @@ public class OvsdbConnectionInstanceTest {
         verify(client).getDatabases();
 
         // test getSchema()
-        ListenableFuture<DatabaseSchema> futureDatabaseSchema = mock(ListenableFuture.class);
+        ListenableFuture<TypedDatabaseSchema> futureDatabaseSchema = mock(ListenableFuture.class);
         when(client.getSchema(anyString())).thenReturn(futureDatabaseSchema);
         assertEquals("Error, did not return correct ListenableFuture<DatabaseSchema> object", futureDatabaseSchema,
                 ovsdbConnectionInstance.getSchema(anyString()));
@@ -252,7 +252,7 @@ public class OvsdbConnectionInstanceTest {
         verify(client).disconnect();
 
         // test getDatabaseSchema()
-        DatabaseSchema databaseSchema = mock(DatabaseSchema.class);
+        TypedDatabaseSchema databaseSchema = mock(TypedDatabaseSchema.class);
         when(client.getDatabaseSchema(anyString())).thenReturn(databaseSchema);
         assertEquals("Error, did not return correct DatabaseSchema object", databaseSchema,
                 ovsdbConnectionInstance.getDatabaseSchema(anyString()));