2 * Copyright © 2023 Fujitsu Network Communications, 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
9 package org.opendaylight.transportpce.servicehandler.utils;
11 import java.util.HashMap;
13 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev230526.RpcActions;
14 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev230526.sdnc.request.header.SdncRequestHeaderBuilder;
15 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.AddOpenroadmOperationalModesToCatalogInput;
16 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.AddOpenroadmOperationalModesToCatalogInputBuilder;
17 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.AddSpecificOperationalModesToCatalogInput;
18 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.AddSpecificOperationalModesToCatalogInputBuilder;
19 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.OperationalModeInfoBuilder;
20 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.operational.mode.info.AmplifiersBuilder;
21 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.operational.mode.info.GridParametersBuilder;
22 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.operational.mode.info.RoadmsBuilder;
23 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.operational.mode.info.XpondersPluggablesBuilder;
24 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.operational.mode.info.xponders.pluggables.XponderPluggableOpenroadmOperationalModeBuilder;
25 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.openroadm.operational.modes.to.catalog.input.operational.mode.info.xponders.pluggables.XponderPluggableOpenroadmOperationalModeKey;
26 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.specific.operational.modes.to.catalog.input.operational.mode.info.SpecificOperationalModesBuilder;
27 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.specific.operational.modes.to.catalog.input.operational.mode.info.specific.operational.modes.SpecificOperationalModeBuilder;
28 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526.add.specific.operational.modes.to.catalog.input.operational.mode.info.specific.operational.modes.SpecificOperationalModeKey;
30 public final class CatalogDataUtils {
32 private CatalogDataUtils() {
36 public static AddOpenroadmOperationalModesToCatalogInput buildAddORToCatalogInput() {
37 XponderPluggableOpenroadmOperationalModeKey key =
38 new XponderPluggableOpenroadmOperationalModeKey("testOROperationalMode");
39 return new AddOpenroadmOperationalModesToCatalogInputBuilder()
40 .setSdncRequestHeader(new SdncRequestHeaderBuilder()
41 .setRequestId("load-OM-Catalog")
42 .setRequestSystemId("appname")
43 .setRpcAction(RpcActions.FillCatalogWithOrOperationalModes)
45 .setOperationalModeInfo(new OperationalModeInfoBuilder()
46 .setGridParameters(new GridParametersBuilder().build())
47 .setXpondersPluggables(
48 new XpondersPluggablesBuilder()
49 .setXponderPluggableOpenroadmOperationalMode(new HashMap<>(Map.of(
51 new XponderPluggableOpenroadmOperationalModeBuilder()
52 .setOpenroadmOperationalModeId(key.toString())
55 .setRoadms(new RoadmsBuilder().build())
56 .setAmplifiers(new AmplifiersBuilder().build())
61 public static AddSpecificOperationalModesToCatalogInput buildAddSpecificToCatalogInput() {
62 SpecificOperationalModeKey key = new SpecificOperationalModeKey("testSpecificOperationalMode");
63 return new AddSpecificOperationalModesToCatalogInputBuilder()
64 .setSdncRequestHeader(new SdncRequestHeaderBuilder()
65 .setRequestId("load-specific-OM-Catalog")
66 .setRequestSystemId("test")
67 .setRpcAction(RpcActions.FillCatalogWithSpecificOperationalModes)
69 .setOperationalModeInfo(new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev230526
70 .add.specific.operational.modes.to.catalog.input.OperationalModeInfoBuilder()
71 .setSpecificOperationalModes(
72 new SpecificOperationalModesBuilder()
73 .setSpecificOperationalMode(
76 new SpecificOperationalModeBuilder()
77 .setOperationalModeId(key.toString())