X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fswitchmanager%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fswitchmanager%2FISwitchManager.java;h=072544c2146f9edd31a7b3bdf9458378290064d9;hb=e640f23d9c37afac9ca51f48e155302bc65327ed;hp=1af67719e19316407fb70f04066a2ffdc59ce4f3;hpb=25186c4271c02a6774e1a16f1e16a71ca06c693f;p=controller.git diff --git a/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/ISwitchManager.java b/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/ISwitchManager.java index 1af67719e1..072544c214 100644 --- a/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/ISwitchManager.java +++ b/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/ISwitchManager.java @@ -66,6 +66,13 @@ public interface ISwitchManager { */ public List getNetworkDevices(); + /** + * Return a Set of all configured devices that are not connected to the controller + * + * @return Set of {@link org.opendaylight.controller.switchmanager.Switch} + */ + public Set getConfiguredNotConnectedSwitches(); + /** * Return a list of subnet that were previously configured * @@ -335,6 +342,14 @@ public interface ISwitchManager { */ public Boolean isNodeConnectorEnabled(NodeConnector nodeConnector); + /** + * Test whether the given node connector exists. + * + * @param nc {@link org.opendaylight.controller.sal.core.NodeConnector} + * @return True if exists, false otherwise. + */ + public boolean doesNodeConnectorExist(NodeConnector nc); + /** * Return controller MAC address * @@ -351,29 +366,19 @@ public interface ISwitchManager { public byte[] getNodeMAC(Node node); /** - * Return true if the host Refresh procedure (by sending ARP request probes - * to known hosts) is enabled. By default, the procedure is enabled. This can - * be overwritten by OSFI CLI "hostRefresh off". + * Create a Name/Tier/Bandwidth Property object based on given property name + * and value. Other property types are not supported yet. * - * @return true if it is enabled; false if it's disabled. - */ - public boolean isHostRefreshEnabled(); - - /** - * Return host refresh retry count - * - * @return host refresh retry count + * @param propName + * Name of the Property specified by + * {@link org.opendaylight.controller.sal.core.Property} and its + * extended classes + * @param propValue + * Value of the Property specified by + * {@link org.opendaylight.controller.sal.core.Property} and its + * extended classes + * @return {@link org.opendaylight.controller.sal.core.Property} */ - public int getHostRetryCount(); - - /** - * Create a Name/Tier/Bandwidth Property object based on given property - * name and value. Other property types are not supported yet. - * - * @param propName Name of the Property specified by {@link org.opendaylight.controller.sal.core.Property} and its extended classes - * @param propValue Value of the Property specified by {@link org.opendaylight.controller.sal.core.Property} and its extended classes - * @return {@link org.opendaylight.controller.sal.core.Property} - */ public Property createProperty(String propName, String propValue); /** @@ -387,4 +392,44 @@ public interface ISwitchManager { */ @Deprecated public String getNodeDescription(Node node); + + /** + * Return all the properties of the controller + * + * @return map of {@link org.opendaylight.controller.sal.core.Property} such + * as {@link org.opendaylight.controller.sal.core.Description} + * and/or {@link org.opendaylight.controller.sal.core.Tier} etc. + */ + public Map getControllerProperties(); + + /** + * Return a specific property of the controller given the property name + * + * @param propName + * the property name specified by + * {@link org.opendaylight.controller.sal.core.Property} and its + * extended classes + * @return {@link org.opendaylight.controller.sal.core.Property} + */ + public Property getControllerProperty(String propertyName); + + /** + * Set a specific property of the controller + * + * @param property + * {@link org.opendaylight.controller.sal.core.Property} + * @return + */ + public Status setControllerProperty(Property property); + + /** + * Remove a property of a node + * + * @param propertyName + * the property name specified by + * {@link org.opendaylight.controller.sal.core.Property} and its + * extended classes + * @return success or failed reason + */ + public Status removeControllerProperty(String propertyName); }