+ public static void writeNetworkInDataStore(DataBroker dataBroker) {
+
+ try (
+ // load openroadm-network
+ Reader gnpyNetwork = new FileReader("src/test/resources/gnpy/gnpy_network.json",
+ StandardCharsets.UTF_8);
+ // load openroadm-topology
+ Reader gnpyTopo = new FileReader("src/test/resources/gnpy/gnpy_topology.json",
+ StandardCharsets.UTF_8);
+ JsonReader networkReader = new JsonReader(gnpyNetwork);
+ JsonReader topoReader = new JsonReader(gnpyTopo);
+ ) {
+
+ Networks networks = (Networks) JsonUtil.getInstance().getDataObjectFromJson(networkReader,
+ QName.create("urn:ietf:params:xml:ns:yang:ietf-network", "2018-02-26", "networks"));
+ @NonNull
+ List<Network> networkMap = new ArrayList<>(networks.nonnullNetwork().values());
+ saveOpenRoadmNetwork(networkMap.get(0), NetworkUtils.UNDERLAY_NETWORK_ID, dataBroker);
+ networks = (Networks) JsonUtil.getInstance().getDataObjectFromJson(topoReader,
+ QName.create("urn:ietf:params:xml:ns:yang:ietf-network", "2018-02-26", "networks"));
+ saveOpenRoadmNetwork(networkMap.get(0), NetworkUtils.UNDERLAY_NETWORK_ID, dataBroker);
+ } catch (IOException | ExecutionException | InterruptedException e) {
+ LOG.error("Cannot init test ", e);
+ Assert.fail("Cannot init test ");
+ }
+ }
+
+ private static void saveOpenRoadmNetwork(Network network, String networkId, DataBroker dataBroker)
+ throws InterruptedException, ExecutionException {
+ InstanceIdentifier<Network> nwInstanceIdentifier = InstanceIdentifier.builder(Networks.class)
+ .child(Network.class, new NetworkKey(new NetworkId(networkId))).build();
+ WriteTransaction dataWriteTransaction = dataBroker.newWriteOnlyTransaction();
+ dataWriteTransaction.put(LogicalDatastoreType.CONFIGURATION, nwInstanceIdentifier, network);
+ dataWriteTransaction.commit().get();
+ }
+
+ public static void writeNetworkIntoDataStore(DataBroker dataBroker,
+ DataStoreContext dataStoreContext, Network network)
+ throws ExecutionException, InterruptedException {
+
+ InstanceIdentifier<Network> nwInstanceIdentifier = InstanceIdentifier.builder(Networks.class)
+ .child(Network.class, new NetworkKey(new NetworkId(NetworkUtils.OVERLAY_NETWORK_ID)))
+ .build();
+ WriteTransaction dataWriteTransaction = dataBroker.newWriteOnlyTransaction();
+ dataWriteTransaction.put(LogicalDatastoreType.CONFIGURATION, nwInstanceIdentifier, network);
+ dataWriteTransaction.commit().get();
+ }
+