3 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
5 * This program and the accompanying materials are made available under the
6 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 * and is available at http://www.eclipse.org/legal/epl-v10.html
10 package org.opendaylight.controller.switchmanager.northbound;
12 import java.util.HashMap;
13 import java.util.HashSet;
17 import javax.xml.bind.annotation.XmlAccessType;
18 import javax.xml.bind.annotation.XmlAccessorType;
19 import javax.xml.bind.annotation.XmlElement;
20 import javax.xml.bind.annotation.XmlElementWrapper;
21 import javax.xml.bind.annotation.XmlRootElement;
23 import org.opendaylight.controller.sal.core.Node;
24 import org.opendaylight.controller.sal.core.Property;
26 import com.fasterxml.jackson.annotation.JsonIgnore;
27 import com.fasterxml.jackson.annotation.JsonProperty;
30 * The class describes set of properties attached to a node
34 @XmlAccessorType(XmlAccessType.NONE)
35 public class NodeProperties {
39 @XmlElement(name="property")
42 private Set<Property> properties;
44 // JAXB required constructor
45 private NodeProperties() {
47 this.properties = null;
50 public NodeProperties(Node node, Set<Property> properties) {
52 this.properties = properties;
55 @JsonProperty(value="properties")
56 public Map<String, Property> getMapProperties() {
57 Map<String, Property> map = new HashMap<String, Property>();
58 for (Property p : properties) {
59 map.put(p.getName(), p);
64 public void setMapProperties(Map<String, Property> propertiesMap) {
65 this.properties = new HashSet<Property>(propertiesMap.values());
68 public Set<Property> getProperties() {
72 public void setProperties(Set<Property> properties) {
73 this.properties = properties;
76 public Node getNode() {
80 public void setNode(Node node) {