Make ResourceService API more flexible in parameter
Change-Id: Ic8b803cc6ae3b2798de525bfd6545ac5c57e8fdd
diff --git a/core/api/src/main/java/org/onosproject/net/resource/ResourceAdminService.java b/core/api/src/main/java/org/onosproject/net/resource/ResourceAdminService.java
index edc3755..a46848a 100644
--- a/core/api/src/main/java/org/onosproject/net/resource/ResourceAdminService.java
+++ b/core/api/src/main/java/org/onosproject/net/resource/ResourceAdminService.java
@@ -43,7 +43,7 @@
* @return true if registration is successfully done, false otherwise. Registration
* succeeds when each resource is not registered or unallocated.
*/
- boolean register(List<Resource> resources);
+ boolean register(List<? extends Resource> resources);
/**
* Unregisters the specified resources.
@@ -63,5 +63,5 @@
* @return true if unregistration is successfully done, false otherwise. Unregistration
* succeeds when each resource is not registered or unallocated.
*/
- boolean unregister(List<ResourceId> ids);
+ boolean unregister(List<? extends ResourceId> ids);
}
diff --git a/core/api/src/main/java/org/onosproject/net/resource/ResourceService.java b/core/api/src/main/java/org/onosproject/net/resource/ResourceService.java
index b52b6b9..7a75296 100644
--- a/core/api/src/main/java/org/onosproject/net/resource/ResourceService.java
+++ b/core/api/src/main/java/org/onosproject/net/resource/ResourceService.java
@@ -64,7 +64,7 @@
* @param resources resources to be allocated
* @return non-empty list of allocation information if succeeded, otherwise empty list
*/
- List<ResourceAllocation> allocate(ResourceConsumer consumer, List<Resource> resources);
+ List<ResourceAllocation> allocate(ResourceConsumer consumer, List<? extends Resource> resources);
/**
* Transactionally allocates the specified resources to the specified user.
diff --git a/core/api/src/main/java/org/onosproject/net/resource/ResourceStore.java b/core/api/src/main/java/org/onosproject/net/resource/ResourceStore.java
index 8456106..051b9ca 100644
--- a/core/api/src/main/java/org/onosproject/net/resource/ResourceStore.java
+++ b/core/api/src/main/java/org/onosproject/net/resource/ResourceStore.java
@@ -37,7 +37,7 @@
* @param resources resources to be registered
* @return true if the registration succeeds, false otherwise
*/
- boolean register(List<Resource> resources);
+ boolean register(List<? extends Resource> resources);
/**
* Unregisters the resources in transactional way.
@@ -48,7 +48,7 @@
* @param ids resources to be unregistered
* @return true if the registration succeeds, false otherwise
*/
- boolean unregister(List<ResourceId> ids);
+ boolean unregister(List<? extends ResourceId> ids);
/**
* Allocates the specified resources to the specified consumer in transactional way.
@@ -60,7 +60,7 @@
* @param consumer resource consumer which the resources are allocated to
* @return true if the allocation succeeds, false otherwise.
*/
- boolean allocate(List<Resource> resources, ResourceConsumer consumer);
+ boolean allocate(List<? extends Resource> resources, ResourceConsumer consumer);
/**
* Releases the specified allocated resources in transactional way.
diff --git a/core/api/src/test/java/org/onosproject/net/intent/IntentTestsMocks.java b/core/api/src/test/java/org/onosproject/net/intent/IntentTestsMocks.java
index 6511cfa..471546e 100644
--- a/core/api/src/test/java/org/onosproject/net/intent/IntentTestsMocks.java
+++ b/core/api/src/test/java/org/onosproject/net/intent/IntentTestsMocks.java
@@ -192,7 +192,7 @@
}
@Override
- public List<ResourceAllocation> allocate(ResourceConsumer consumer, List<Resource> resources) {
+ public List<ResourceAllocation> allocate(ResourceConsumer consumer, List<? extends Resource> resources) {
return null;
}
diff --git a/core/api/src/test/java/org/onosproject/net/resource/MockResourceService.java b/core/api/src/test/java/org/onosproject/net/resource/MockResourceService.java
index f5f884b..52236b3 100644
--- a/core/api/src/test/java/org/onosproject/net/resource/MockResourceService.java
+++ b/core/api/src/test/java/org/onosproject/net/resource/MockResourceService.java
@@ -38,7 +38,7 @@
private final Map<Resource, ResourceConsumer> assignment = new HashMap<>();
@Override
- public List<ResourceAllocation> allocate(ResourceConsumer consumer, List<Resource> resources) {
+ public List<ResourceAllocation> allocate(ResourceConsumer consumer, List<? extends Resource> resources) {
assignment.putAll(
resources.stream().collect(Collectors.toMap(Function.identity(), x -> consumer))
);