Correct ActionService generics
[mdsal.git] / binding / mdsal-binding-api / src / main / java / org / opendaylight / mdsal / binding / api / ActionService.java
index be0b85c9071b882bb904d2615a3df7bc8598e127..96542f7efea71b149cc937f76586b3a0a2d43cb6 100644 (file)
@@ -53,25 +53,25 @@ public interface ActionService extends BindingService {
      * @throws NullPointerException if {@code actionInterface} is null
      * @throws IllegalArgumentException when {@code actionInterface} does not conform to the Binding Specification
      */
-    <P extends DataObject, A extends Action<InstanceIdentifier<P>, ?, ?>> A getActionHandle(ActionSpec<A, P> spec,
-        Set<DataTreeIdentifier<P>> validNodes);
+    <P extends DataObject, A extends Action<? extends InstanceIdentifier<P>, ?, ?>> A getActionHandle(
+        ActionSpec<A, P> spec, Set<DataTreeIdentifier<P>> validNodes);
 
-    default <P extends DataObject, A extends Action<InstanceIdentifier<P>, ?, ?>> A getActionHandle(
+    default <P extends DataObject, A extends Action<? extends InstanceIdentifier<P>, ?, ?>> A getActionHandle(
             final ActionSpec<A, P> spec) {
         return getActionHandle(spec, ImmutableSet.of());
     }
 
-    default <P extends DataObject, A extends Action<InstanceIdentifier<P>, ?, ?>> A getActionHandle(
+    default <P extends DataObject, A extends Action<? extends InstanceIdentifier<P>, ?, ?>> A getActionHandle(
             final ActionSpec<A, P> spec, final LogicalDatastoreType dataStore, final InstanceIdentifier<P> path) {
         return getActionHandle(spec, ImmutableSet.of(DataTreeIdentifier.create(dataStore, path)));
     }
 
-    default <P extends DataObject, A extends Action<InstanceIdentifier<P>, ?, ?>> A getActionHandle(
+    default <P extends DataObject, A extends Action<? extends InstanceIdentifier<P>, ?, ?>> A getActionHandle(
             final ActionSpec<A, P> spec, final InstanceIdentifier<P> path) {
         return getActionHandle(spec, LogicalDatastoreType.OPERATIONAL, path);
     }
 
-    default <P extends DataObject, A extends Action<InstanceIdentifier<P>, ?, ?>> A getActionHandle(
+    default <P extends DataObject, A extends Action<? extends InstanceIdentifier<P>, ?, ?>> A getActionHandle(
             final ActionSpec<A, P> spec, @SuppressWarnings("unchecked") final DataTreeIdentifier<P>... nodes) {
         return getActionHandle(spec, ImmutableSet.copyOf(nodes));
     }