class SkipCDSBuildingBlockListener implements FlowManipulator {

    @Override
    public void run(List<ExecuteBuildingBlock> flowsToExecute, ExecuteBuildingBlock currentBB,
            BuildingBlockExecution execution) {
        String customizationUUID = currentBB.getBuildingBlock().getKey();

        if (Strings.isEmpty(customizationUUID)) {
            return;
        }

        if (currentBB.getBuildingBlock().getBpmnScope().equalsIgnoreCase("VNF")
                && containsIgnoreCaseAction(currentBB, vnfActions)) {
            List<VnfResourceCustomization> vnfResourceCustomizations =
                    catalogDbClient.getVnfResourceCustomizationByModelUuid(
                            currentBB.getRequestDetails().getModelInfo().getModelUuid());
            if (!CollectionUtils.isEmpty(vnfResourceCustomizations)) {
                VnfResourceCustomization vrc = catalogDbClient.findVnfResourceCustomizationInList(customizationUUID,
                        vnfResourceCustomizations);
                if (null != vrc) {
                    boolean skipConfigVNF = vrc.isSkipPostInstConf();
                    currentSequenceSkipCheck(execution, skipConfigVNF);
                }

            }
        } else if (currentBB.getBuildingBlock().getBpmnScope().equalsIgnoreCase("VFModule")
                && containsIgnoreCaseAction(currentBB, vFModuleAction)) {

            VfModuleCustomization vfc =
                    catalogDbClient.getVfModuleCustomizationByModelCuztomizationUUID(customizationUUID);

            if (null != vfc) {
                boolean skipVfModule = vfc.isSkipPostInstConf();
                currentSequenceSkipCheck(execution, skipVfModule);
            }
        }


    }

}