Convert TapiNetworkModelServiceImpl to a Component
[transportpce.git] / tapi / src / main / java / org / opendaylight / transportpce / tapi / topology / TapiNetworkModelService.java
1 /*
2  * Copyright © 2021 Nokia, 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 package org.opendaylight.transportpce.tapi.topology;
9
10 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220922.mapping.Mapping;
11 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220922.network.Nodes;
12
13 public interface TapiNetworkModelService {
14
15     /**
16      * Create new TAPI node in tapi topologies.
17      *
18      * @param orNodeId
19      *     unique node ID of new OpenROADM node
20      * @param orNodeVersion
21      *     OpenROADM node version
22      * @param node
23      *     OpenRoadm node
24      */
25     void createTapiNode(String orNodeId, int orNodeVersion, Nodes node);
26
27     /**
28      * Delete TAPI node in topologies and update corresponding TAPI context objects.
29      *
30      * @param nodeId
31      *     unique node ID of OpenROADM node.
32      *
33      */
34     void deleteTapinode(String nodeId);
35
36     /**
37      * Update termination point, and if need, be associated links, of
38      * openroadm-topology and otn-topology after a change on a given mapping.
39      *
40      * @param nodeId
41      *            unique node ID of OpenROADM node at the origin of the NETCONF
42      *            notification change.
43      * @param mapping
44      *            updated mapping following the device notification change.
45      */
46     void updateTapiTopology(String nodeId, Mapping mapping);
47 }