+ public void checkPnfInMaintFlag(BuildingBlockExecution execution) {
+ boolean inMaint = false;
+ try {
+ Pnf pnf = extractPojosForBB.extractByKey(execution, ResourceKey.PNF);
+ String pnfName = pnf.getPnfName();
+ inMaint = aaiPnfResources.checkInMaintFlag(pnfName);
+ } catch (Exception ex) {
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
+ }
+ if (inMaint) {
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, "PNF is already in maintenance in A&AI");
+ }
+ }
+
+ public void modifyPnfInMaintFlag(BuildingBlockExecution execution, boolean inMaint) {
+ try {
+ Pnf pnf = extractPojosForBB.extractByKey(execution, ResourceKey.PNF);
+ logger.info("In modifyPnfInMaintFlag pnfname: {}", pnf.getPnfName());
+ Pnf copiedPnf = pnf.shallowCopyId();
+ copiedPnf.setPnfName(pnf.getPnfName());
+
+ copiedPnf.setInMaint(inMaint);
+ pnf.setInMaint(inMaint);
+ logger.info("In modifyPnfInMaintFlag if block pnfInMaint: {}, copiedPnfInMaint: {}", pnf.isInMaint(),
+ copiedPnf.isInMaint());
+ aaiPnfResources.updateObjectPnf(copiedPnf);
+
+ } catch (Exception ex) {
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
+ }
+ }
+
+