Add method to get available resources filtered by its type

Change-Id: I034bdcf4e9a399af6c68c7ed7f53185bba9b2e27
diff --git a/core/api/src/main/java/org/onosproject/net/newresource/ResourceService.java b/core/api/src/main/java/org/onosproject/net/newresource/ResourceService.java
index 64ec60a..99733cd 100644
--- a/core/api/src/main/java/org/onosproject/net/newresource/ResourceService.java
+++ b/core/api/src/main/java/org/onosproject/net/newresource/ResourceService.java
@@ -163,6 +163,27 @@
     Set<Resource> getAvailableResources(DiscreteResourceId parent);
 
     /**
+     * Returns available resources which are child resources of the specified parent and
+     * whose type is the specified type.
+     *
+     * @param parent parent resource ID
+     * @param cls class to specify a type of resource
+     * @param <T> type of the resource
+     * @return available resources of the specified type under the specified parent resource
+     */
+    <T> Set<Resource> getAvailableResources(DiscreteResourceId parent, Class<T> cls);
+
+    /**
+     * Returns available resource values which are the values of the child resource of
+     * the specified parent and whose type is the specified type.
+     *
+     * @param parent parent resource ID
+     * @param cls class to specify a type of resource
+     * @param <T> type of the resource
+     * @return available resource value of the specified type under the specified parent resource
+     */
+    <T> Set<T> getAvailableResourceValues(DiscreteResourceId parent, Class<T> cls);
+    /**
      * Returns resources registered under the specified resource.
      *
      * @param parent parent resource ID