2 * Copyright © 2018 Orange, Inc. and others. All rights reserved.
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
8 package org.opendaylight.transportpce.servicehandler.utils;
10 import java.time.OffsetDateTime;
11 import java.time.ZoneOffset;
12 import java.time.format.DateTimeFormatter;
13 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.ConnectionType;
14 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.RpcActions;
15 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.ServiceFormat;
16 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.sdnc.request.header.SdncRequestHeaderBuilder;
17 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.lgx.LgxBuilder;
18 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.port.PortBuilder;
19 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceCreateInput;
20 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceCreateInputBuilder;
21 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceDeleteInput;
22 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceDeleteInputBuilder;
23 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceRerouteInput;
24 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceRerouteInputBuilder;
25 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.delete.input.ServiceDeleteReqInfo;
26 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.delete.input.ServiceDeleteReqInfoBuilder;
27 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime;
29 public class ServiceDataUtils {
31 public static ServiceCreateInput buildServiceCreateInput() {
33 ServiceCreateInputBuilder builtInput = new ServiceCreateInputBuilder();
34 org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input
35 .ServiceAEnd serviceAEnd = getServiceAEndBuild()
37 org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input
38 .ServiceZEnd serviceZEnd = new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service
39 .create.input.ServiceZEndBuilder()
40 .setClli("clli").setServiceFormat(ServiceFormat.OC).setServiceRate((long) 1).setNodeId("XPONDER-3-2")
42 new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service
43 .endpoint.TxDirectionBuilder()
44 .setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
45 .setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
46 .setPortSubSlot("port subslot").setPortType("port type").build())
47 .setLgx(new LgxBuilder().setLgxDeviceName("lgx device name")
48 .setLgxPortName("lgx port name").setLgxPortRack("lgx port rack")
49 .setLgxPortShelf("lgx port shelf").build())
52 new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service
53 .endpoint.RxDirectionBuilder()
54 .setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
55 .setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
56 .setPortSubSlot("port subslot").setPortType("port type").build())
57 .setLgx(new LgxBuilder().setLgxDeviceName("lgx device name")
58 .setLgxPortName("lgx port name").setLgxPortRack("lgx port rack")
59 .setLgxPortShelf("lgx port shelf").build())
63 builtInput.setCommonId("commonId");
64 builtInput.setConnectionType(ConnectionType.Service);
65 builtInput.setCustomer("Customer");
66 builtInput.setServiceName("service 1");
67 builtInput.setServiceAEnd(serviceAEnd);
68 builtInput.setServiceZEnd(serviceZEnd);
69 builtInput.setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("request 1")
70 .setRpcAction(RpcActions.ServiceCreate).setNotificationUrl("notification url").build());
72 return builtInput.build();
75 public static org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input
76 .ServiceAEndBuilder getServiceAEndBuild() {
77 return new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input
79 .setClli("clli").setServiceFormat(ServiceFormat.OC).setServiceRate((long) 1).setNodeId("XPONDER-1-2")
81 new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service
82 .endpoint.TxDirectionBuilder()
83 .setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
84 .setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
85 .setPortSubSlot("port subslot").setPortType("port type").build())
86 .setLgx(new LgxBuilder().setLgxDeviceName("lgx device name")
87 .setLgxPortName("lgx port name").setLgxPortRack("lgx port rack")
88 .setLgxPortShelf("lgx port shelf").build())
91 new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service
92 .endpoint.RxDirectionBuilder()
93 .setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
94 .setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
95 .setPortSubSlot("port subslot").setPortType("port type").build())
96 .setLgx(new LgxBuilder().setLgxDeviceName("lgx device name")
97 .setLgxPortName("lgx port name").setLgxPortRack("lgx port rack")
98 .setLgxPortShelf("lgx port shelf").build())
102 public static org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input
103 .ServiceZEndBuilder getServiceZEndBuild() {
104 return new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input
105 .ServiceZEndBuilder()
106 .setClli("clli").setServiceFormat(ServiceFormat.OC).setServiceRate((long) 1).setNodeId("XPONDER-1-2")
108 new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service
109 .endpoint.TxDirectionBuilder()
110 .setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
111 .setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
112 .setPortSubSlot("port subslot").setPortType("port type").build())
113 .setLgx(new LgxBuilder().setLgxDeviceName("lgx device name")
114 .setLgxPortName("lgx port name").setLgxPortRack("lgx port rack")
115 .setLgxPortShelf("lgx port shelf").build())
118 new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service
119 .endpoint.RxDirectionBuilder()
120 .setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
121 .setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
122 .setPortSubSlot("port subslot").setPortType("port type").build())
123 .setLgx(new LgxBuilder().setLgxDeviceName("lgx device name")
124 .setLgxPortName("lgx port name").setLgxPortRack("lgx port rack")
125 .setLgxPortShelf("lgx port shelf").build())
129 public static ServiceDeleteInput buildServiceDeleteInput() {
130 ServiceDeleteInputBuilder deleteInputBldr = new ServiceDeleteInputBuilder();
131 DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssxxx");
132 OffsetDateTime offsetDateTime = OffsetDateTime.now(ZoneOffset.UTC);
133 DateAndTime datetime = new DateAndTime(dtf.format(offsetDateTime));
134 deleteInputBldr.setServiceDeleteReqInfo(new ServiceDeleteReqInfoBuilder().setServiceName("service 1")
135 .setDueDate(datetime).setTailRetention(ServiceDeleteReqInfo.TailRetention.No).build());
136 SdncRequestHeaderBuilder sdncBuilder = new SdncRequestHeaderBuilder();
137 sdncBuilder.setNotificationUrl("notification url");
138 sdncBuilder.setRequestId("request 1");
139 sdncBuilder.setRequestSystemId("request system 1");
140 sdncBuilder.setRpcAction(RpcActions.ServiceDelete);
141 deleteInputBldr.setSdncRequestHeader(sdncBuilder.build());
142 return deleteInputBldr.build();
145 public static ServiceRerouteInput buildServiceRerouteInput() {
146 ServiceRerouteInputBuilder builder = new ServiceRerouteInputBuilder();
147 builder.setServiceName("service 1");
148 return builder.build();