- if (readService.isPresent()) {
- try {
- WriteTransaction writeTx = this.dataBroker.newWriteOnlyTransaction();
- InstanceIdentifier<Services> iid = InstanceIdentifier.create(ServiceList.class)
- .child(Services.class, new ServicesKey(serviceName));
- Services services = new ServicesBuilder(readService.get())
- .setOperationalState(operationalState)
+ if (!readService.isPresent()) {
+ LOG.warn("modifyService: {}", LogMessages.SERVICE_NOT_FOUND);
+ return OperationResult.failed(LogMessages.SERVICE_NOT_FOUND);
+ }
+ try {
+ WriteTransaction writeTx = this.dataBroker.newWriteOnlyTransaction();
+ InstanceIdentifier<Services> iid = InstanceIdentifier.create(ServiceList.class)
+ .child(Services.class, new ServicesKey(serviceName));
+ Services services = new ServicesBuilder(readService.get()).setOperationalState(operationalState)
+ .setAdministrativeState(administrativeState)
+ .build();
+ writeTx.merge(LogicalDatastoreType.OPERATIONAL, iid, services);
+ writeTx.commit().get(Timeouts.DATASTORE_WRITE, TimeUnit.MILLISECONDS);
+ return OperationResult.ok(LogMessages.SUCCESSFUL_MESSAGE);
+ } catch (TimeoutException | InterruptedException | ExecutionException e) {
+ LOG.warn("modifyService : {}", LogMessages.failedTo("modify", serviceName), e);
+ return OperationResult.failed(LogMessages.failedTo("modify", serviceName));
+ }
+ }
+
+ @Override
+ public OperationResult modifyTempService(String serviceName, State operationalState,
+ AdminStates administrativeState) {
+ LOG.debug("Modifying '{}' Temp Service", serviceName);
+ Optional<org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.temp.service.list
+ .Services> readService = getTempService(serviceName);
+ if (!readService.isPresent()) {
+ LOG.warn("modifyTempService: {}", LogMessages.SERVICE_NOT_FOUND);
+ return OperationResult.failed(LogMessages.SERVICE_NOT_FOUND);
+ }
+ try {
+ WriteTransaction writeTx = this.dataBroker.newWriteOnlyTransaction();
+ InstanceIdentifier<org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.temp.service.list
+ .Services> iid = InstanceIdentifier.create(TempServiceList.class)
+ .child(org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.temp.service.list
+ .Services.class, new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531
+ .temp.service.list.ServicesKey(serviceName));
+ org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.temp.service.list
+ .Services services = new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.temp
+ .service.list.ServicesBuilder(readService.get()).setOperationalState(operationalState)