X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnorthbound%2Fcontrollermanager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcontrollermanager%2Fnorthbound%2FControllerProperties.java;fp=opendaylight%2Fnorthbound%2Fcontrollermanager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcontrollermanager%2Fnorthbound%2FControllerProperties.java;h=ac0d0397464b53a6bbbd32afcbbc8421a94784ac;hp=0000000000000000000000000000000000000000;hb=b2b9f320d79eac0253f2417b11eb74bdbc095c66;hpb=a111559d66096090909ef933800df3731f37ba21 diff --git a/opendaylight/northbound/controllermanager/src/main/java/org/opendaylight/controller/controllermanager/northbound/ControllerProperties.java b/opendaylight/northbound/controllermanager/src/main/java/org/opendaylight/controller/controllermanager/northbound/ControllerProperties.java new file mode 100644 index 0000000000..ac0d039746 --- /dev/null +++ b/opendaylight/northbound/controllermanager/src/main/java/org/opendaylight/controller/controllermanager/northbound/ControllerProperties.java @@ -0,0 +1,63 @@ +package org.opendaylight.controller.controllermanager.northbound; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElementRef; +import javax.xml.bind.annotation.XmlElementWrapper; +import javax.xml.bind.annotation.XmlRootElement; + +import org.codehaus.jackson.annotate.JsonIgnore; +import org.codehaus.jackson.annotate.JsonProperty; +import org.opendaylight.controller.sal.core.Property; + +/** + * The class describes set of properties attached to a controller + */ + +@XmlRootElement +@XmlAccessorType(XmlAccessType.NONE) +public class ControllerProperties { + + @XmlElementRef + @XmlElementWrapper + @JsonIgnore + /** + * Set to store the controller properties + */ + private Set properties; + + // JAXB required constructor + private ControllerProperties() { + this.properties = null; + } + + public ControllerProperties(Set properties) { + this.properties = properties; + } + + @JsonProperty(value="properties") + public Map getMapProperties() { + Map map = new HashMap(); + for (Property p : properties) { + map.put(p.getName(), p); + } + return map; + } + + public void setMapProperties(Map propertiesMap) { + this.properties = new HashSet(propertiesMap.values()); + } + + public Set getProperties() { + return properties; + } + + public void setProperties(Set properties) { + this.properties = properties; + } +}