@Override public List<Problem> checkResolution(final SProcessDefinition processDefinition) { final List<SBusinessDataDefinition> businessDataDefinitions = processDefinition.getProcessContainer().getBusinessDataDefinitions(); if (businessDataDefinitions.isEmpty()) { return Collections.emptyList(); } final List<Problem> problems = new ArrayList<>(); final Set<String> entityClassNames = businessDataRepository.getEntityClassNames(); for (final SBusinessDataDefinition sBusinessDataDefinition : businessDataDefinitions) { final String className = sBusinessDataDefinition.getClassName(); if (!entityClassNames.contains(className)) { final Problem problem = new ProblemImpl(Level.ERROR, sBusinessDataDefinition.getName(), "business data", "The business data '" + sBusinessDataDefinition.getName() + "' with the class name '" + className + "', is not managed by the current version of the BDM"); problems.add(problem); } } return problems; }
@Override public List<Problem> checkResolution(final SProcessDefinition processDefinition) { final List<SBusinessDataDefinition> businessDataDefinitions = processDefinition.getProcessContainer().getBusinessDataDefinitions(); if (businessDataDefinitions.isEmpty()) { return Collections.emptyList(); } final List<Problem> problems = new ArrayList<>(); final Set<String> entityClassNames = businessDataRepository.getEntityClassNames(); for (final SBusinessDataDefinition sBusinessDataDefinition : businessDataDefinitions) { final String className = sBusinessDataDefinition.getClassName(); if (!entityClassNames.contains(className)) { final Problem problem = new ProblemImpl(Level.ERROR, sBusinessDataDefinition.getName(), "business data", "The business data '" + sBusinessDataDefinition.getName() + "' with the class name '" + className + "', is not managed by the current version of the BDM"); problems.add(problem); } } return problems; }
private void initializeBusinessData(SFlowElementContainerDefinition processContainer, final SProcessInstance sInstance, final SExpressionContext expressionContext) throws SBonitaException { final List<SBusinessDataDefinition> businessDataDefinitions = processContainer.getBusinessDataDefinitions(); for (final SBusinessDataDefinition bdd : businessDataDefinitions) { final SExpression expression = bdd.getDefaultValueExpression(); if (bdd.isMultiple()) { final List<Long> dataIds = initializeMultipleBusinessDataIds(expressionContext, expression); final SRefBusinessDataInstanceBuilderFactory instanceFactory = BuilderFactory.get(SRefBusinessDataInstanceBuilderFactory.class); final SRefBusinessDataInstance instance = instanceFactory.createNewInstance(bdd.getName(), sInstance.getId(), dataIds, bdd.getClassName()) .done(); refBusinessDataService.addRefBusinessDataInstance(instance); } else { final Long primaryKey = initializeSingleBusinessData(expressionContext, expression); final SRefBusinessDataInstanceBuilderFactory instanceFactory = BuilderFactory.get(SRefBusinessDataInstanceBuilderFactory.class); final SRefBusinessDataInstance instance = instanceFactory.createNewInstance(bdd.getName(), sInstance.getId(), primaryKey, bdd.getClassName()) .done(); refBusinessDataService.addRefBusinessDataInstance(instance); } } }
private void initializeBusinessData(SFlowElementContainerDefinition processContainer, final SProcessInstance sInstance, final SExpressionContext expressionContext) throws SBonitaException { final List<SBusinessDataDefinition> businessDataDefinitions = processContainer.getBusinessDataDefinitions(); for (final SBusinessDataDefinition bdd : businessDataDefinitions) { final SExpression expression = bdd.getDefaultValueExpression(); if (bdd.isMultiple()) { final List<Long> dataIds = initializeMultipleBusinessDataIds(expressionContext, expression); final SRefBusinessDataInstanceBuilderFactory instanceFactory = BuilderFactory.get(SRefBusinessDataInstanceBuilderFactory.class); final SRefBusinessDataInstance instance = instanceFactory.createNewInstance(bdd.getName(), sInstance.getId(), dataIds, bdd.getClassName()) .done(); refBusinessDataService.addRefBusinessDataInstance(instance); } else { final Long primaryKey = initializeSingleBusinessData(expressionContext, expression); final SRefBusinessDataInstanceBuilderFactory instanceFactory = BuilderFactory.get(SRefBusinessDataInstanceBuilderFactory.class); final SRefBusinessDataInstance instance = instanceFactory.createNewInstance(bdd.getName(), sInstance.getId(), primaryKey, bdd.getClassName()) .done(); refBusinessDataService.addRefBusinessDataInstance(instance); } } }