Fix actions in keyed lists
[mdsal.git] / binding / mdsal-binding-api / src / main / java / org / opendaylight / mdsal / binding / api / ActionService.java
index 7b272ba101f09f6f2763757bdcf0f7f5fb9c614a..6642c34e6e7de0e6575cc1cdc1154a9d29ab541e 100644 (file)
@@ -56,22 +56,23 @@ public interface ActionService extends BindingService {
     <O extends DataObject, T extends Action<?, ?, ?>> T getActionHandle(Class<T> actionInterface,
             Set<DataTreeIdentifier<O>> validNodes);
 
-    default <O extends DataObject, T extends Action<O, ?, ?>> T getActionHandle(final Class<T> actionInterface) {
+    default <O extends DataObject, P extends InstanceIdentifier<O>, T extends Action<P, ?, ?>> T getActionHandle(
+            final Class<T> actionInterface) {
         return getActionHandle(actionInterface, ImmutableSet.of());
     }
 
-    default <O extends DataObject, T extends Action<O, ?, ?>> T getActionHandle(final Class<T> actionInterface,
-            final LogicalDatastoreType dataStore, final InstanceIdentifier<O> path) {
+    default <O extends DataObject, P extends InstanceIdentifier<O>, T extends Action<P, ?, ?>> T getActionHandle(
+            final Class<T> actionInterface, final LogicalDatastoreType dataStore, final P path) {
         return getActionHandle(actionInterface, ImmutableSet.of(DataTreeIdentifier.create(dataStore, path)));
     }
 
-    default <O extends DataObject, T extends Action<O, ?, ?>> T getActionHandle(final Class<T> actionInterface,
-            final InstanceIdentifier<O> path) {
+    default <O extends DataObject, P extends InstanceIdentifier<O>, T extends Action<P, ?, ?>> T getActionHandle(
+            final Class<T> actionInterface, final P path) {
         return getActionHandle(actionInterface, LogicalDatastoreType.OPERATIONAL, path);
     }
 
-    default <O extends DataObject, T extends Action<O, ?, ?>> T getActionHandle(final Class<T> actionInterface,
-            @SuppressWarnings("unchecked") final DataTreeIdentifier<O>... nodes) {
+    default <O extends DataObject, P extends InstanceIdentifier<O>, T extends Action<P, ?, ?>> T getActionHandle(
+            final Class<T> actionInterface, @SuppressWarnings("unchecked") final DataTreeIdentifier<O>... nodes) {
         return getActionHandle(actionInterface, ImmutableSet.copyOf(nodes));
     }
 }