Stubpce Update
[transportpce.git] / tests / stubpce / src / main / java / org / opendaylight / transportpce / stubpce / topology / Network.java
1 /*
2  * Copyright © 2017 Orange, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.transportpce.stubpce.topology;
10
11 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
12 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
13 import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
14
15 import java.util.List;
16
17 /**
18  * Class to create topology
19  * structure according to the idea of
20  * SuperNode.
21  *
22  * @author <a href="mailto:martial.coulibaly@gfi.com">Martial Coulibaly</a> on
23  *         behalf of Orange
24  */
25 @JacksonXmlRootElement(localName = "network")
26 public class Network {
27     /** SuperNode List.*/
28     @JacksonXmlElementWrapper(localName = "super-nodes")
29     @JacksonXmlProperty(localName = "super-node")
30     private List<SuperNode> superNodes;
31     /** Links between Supernodes. */
32     @JacksonXmlProperty(localName = "roadm-to-roadm")
33     private RoadmToRoadm roadmToroadm;
34
35     /**
36      * Network constructor.
37      *
38      * @param nodes Supernode list
39      * @param links roadmtoroadm links
40      */
41     public Network(
42             @JacksonXmlProperty(localName = "Nsupernode") final List<SuperNode> nodes,
43             @JacksonXmlProperty(localName = "roadm-to-roadm") final RoadmToRoadm links) {
44         setSuperNodes(nodes);
45         setRoadmToroadm(links);
46     }
47
48     public List<SuperNode> getSuperNodes() {
49         return superNodes;
50     }
51
52     public void setSuperNodes(List<SuperNode> superNodes) {
53         this.superNodes = superNodes;
54     }
55
56
57     public RoadmToRoadm getRoadmToroadm() {
58         return roadmToroadm;
59     }
60
61     public void setRoadmToroadm(RoadmToRoadm roadmToroadm) {
62         this.roadmToroadm = roadmToroadm;
63     }
64
65     @Override
66     public String toString() {
67         int index;
68         int size;
69         java.lang.String name = "Network [";
70         java.lang.StringBuilder builder = new java.lang.StringBuilder(name);
71         index = 0;
72         size = superNodes.size();
73         builder.append("SuperNodes [");
74         if (size > 0) {
75             for (SuperNode tmp : superNodes) {
76                 builder.append(tmp.toString());
77                 index++;
78                 if (index < size) {
79                     builder.append(", ");
80                 }
81             }
82         }
83         builder.append("]");
84         if (roadmToroadm != null) {
85             builder.append(", roadmToroadm=");
86             builder.append(roadmToroadm.toString());
87         }
88         return builder.append(']').toString();
89
90     }
91
92 }