Use version 13.1.0 of openroadm-network models
[transportpce.git] / pce / src / main / java / org / opendaylight / transportpce / pce / networkanalyzer / PceNode.java
1 /*
2  * Copyright © 2020 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.pce.networkanalyzer;
10
11 import java.math.BigDecimal;
12 import java.util.BitSet;
13 import java.util.List;
14 import java.util.Map;
15 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State;
16 import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.AdminStates;
17 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev230526.networks.network.node.termination.point.XpdrNetworkAttributes;
18 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev230526.OpenroadmNodeType;
19 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NodeId;
20 import org.opendaylight.yangtools.yang.common.Uint16;
21
22 public interface PceNode {
23     String getPceNodeType();
24
25     String getSupNetworkNodeId();
26
27     String getSupClliNodeId();
28
29     void addOutgoingLink(PceLink outLink);
30
31     String getRdmSrgClient(String tp, String direction);
32
33     String getXpdrClient(String tp);
34
35     boolean checkTP(String tp);
36
37     List<PceLink> getOutgoingLinks();
38
39     AdminStates getAdminStates();
40
41     State getState();
42
43     NodeId getNodeId();
44
45     OpenroadmNodeType getORNodeType();
46
47     String getOperationalMode();
48
49     String getXponderOperationalMode(XpdrNetworkAttributes tp);
50
51     Map<String, List<Uint16>> getAvailableTribPorts();
52
53     Map<String, List<Uint16>> getAvailableTribSlots();
54
55     /**
56      * Get the version of node.
57      * @return the OpenROADM yang release supported by the node.
58      */
59     String getVersion();
60
61     /**
62      * For optical node, the spectrumOccupation of the node.
63      * @return BitSet.
64      */
65     BitSet getBitSetData();
66
67     /**
68      * For optical node the slot width granularity from mc capabilities.
69      * @return Decimal64.
70      */
71     BigDecimal getSlotWidthGranularity();
72
73     /**
74      * For optical node the central-frequency granularity from mc capabilities.
75      * @return Decimal64.
76      */
77     BigDecimal getCentralFreqGranularity();
78 }