String initiatorName = null; if (actorInitiator != null) { initiatorName = actorInitiator.getName(); final SActorBuilder sActorBuilder = sActorBuilderFactory.create(initiatorName, processDefinition.getId(), true); sActorBuilder.addDescription(actorInitiator.getDescription()); if (initiatorName == null || !initiatorName.equals(actor.getName())) { final SActorBuilder sActorBuilder = sActorBuilderFactory.create(actor.getName(), processDefinition.getId(), false); sActorBuilder.addDescription(actor.getDescription()); sActors.add(sActorBuilder.getActor());
String initiatorName = null; if (actorInitiator != null) { initiatorName = actorInitiator.getName(); final SActorBuilder sActorBuilder = sActorBuilderFactory.create(initiatorName, processDefinition.getId(), true); sActorBuilder.addDescription(actorInitiator.getDescription()); if (initiatorName == null || !initiatorName.equals(actor.getName())) { final SActorBuilder sActorBuilder = sActorBuilderFactory.create(actor.getName(), processDefinition.getId(), false); sActorBuilder.addDescription(actor.getDescription()); sActors.add(sActorBuilder.getActor());
/** * @return true if the given Set contains the actor that is allowed to start the given process. */ @Override public Serializable execute(final Map<String, Serializable> parameters, final TenantServiceAccessor serviceAccessor) throws SCommandParameterizationException, SCommandExecutionException { this.serviceAccessor = serviceAccessor; final ActorMappingService actorMappingService = this.serviceAccessor.getActorMappingService(); final ProcessDefinitionService processDefinitionService = this.serviceAccessor.getProcessDefinitionService(); final Set<Long> actorIds = getMandatoryParameter(parameters, ACTOR_IDS_KEY, "Mandatory parameter " + ACTOR_IDS_KEY + " is missing or not convertible to Set<Long>."); final long processDefinitionId = getLongMandadoryParameter(parameters, PROCESS_DEFINITION_ID_KEY); try { final SProcessDefinition definition = processDefinitionService.getProcessDefinition(processDefinitionId); final SActor sActor = actorMappingService.getActor(definition.getActorInitiator().getName(), processDefinitionId); if (sActor != null) { for (final long actorId : actorIds) { if (sActor.getId() == actorId) { return true; } } } } catch (final SBonitaException e) { throw new SCommandExecutionException("Can't get actors For Initiator." + e); } return false; } }
/** * @return true if the given Set contains the actor that is allowed to start the given process. */ @Override public Serializable execute(final Map<String, Serializable> parameters, final TenantServiceAccessor serviceAccessor) throws SCommandParameterizationException, SCommandExecutionException { this.serviceAccessor = serviceAccessor; final ActorMappingService actorMappingService = this.serviceAccessor.getActorMappingService(); final ProcessDefinitionService processDefinitionService = this.serviceAccessor.getProcessDefinitionService(); final Set<Long> actorIds = getMandatoryParameter(parameters, ACTOR_IDS_KEY, "Mandatory parameter " + ACTOR_IDS_KEY + " is missing or not convertible to Set<Long>."); final long processDefinitionId = getLongMandadoryParameter(parameters, PROCESS_DEFINITION_ID_KEY); try { final SProcessDefinition definition = processDefinitionService.getProcessDefinition(processDefinitionId); final SActor sActor = actorMappingService.getActor(definition.getActorInitiator().getName(), processDefinitionId); if (sActor != null) { for (final long actorId : actorIds) { if (sActor.getId() == actorId) { return true; } } } } catch (final SBonitaException e) { throw new SCommandExecutionException("Can't get actors For Initiator." + e); } return false; } }
@Override public ActorInstance getActorInitiator(final long processDefinitionId) throws ActorNotFoundException, ProcessDefinitionNotFoundException { final TenantServiceAccessor tenantAccessor = getTenantAccessor(); final ProcessDefinitionService processDefinitionService = tenantAccessor.getProcessDefinitionService(); final ActorMappingService actorMappingService = tenantAccessor.getActorMappingService(); ActorInstance actorInstance = null; try { final SProcessDefinition definition = processDefinitionService.getProcessDefinition(processDefinitionId); final SActorDefinition sActorDefinition = definition.getActorInitiator(); if (sActorDefinition == null) { throw new ActorNotFoundException("No actor initiator defined on the process"); } final String name = sActorDefinition.getName(); final SActor sActor = actorMappingService.getActor(name, processDefinitionId); actorInstance = ModelConvertor.toActorInstance(sActor); } catch (final SProcessDefinitionNotFoundException e) { // no rollback need, we only read throw new ProcessDefinitionNotFoundException(e); } catch (final SBonitaException e) { throw new RetrieveException(e); } return actorInstance; }
@Override public ActorInstance getActorInitiator(final long processDefinitionId) throws ActorNotFoundException, ProcessDefinitionNotFoundException { final TenantServiceAccessor tenantAccessor = getTenantAccessor(); final ProcessDefinitionService processDefinitionService = tenantAccessor.getProcessDefinitionService(); final ActorMappingService actorMappingService = tenantAccessor.getActorMappingService(); ActorInstance actorInstance = null; try { final SProcessDefinition definition = processDefinitionService.getProcessDefinition(processDefinitionId); final SActorDefinition sActorDefinition = definition.getActorInitiator(); if (sActorDefinition == null) { throw new ActorNotFoundException("No actor initiator defined on the process"); } final String name = sActorDefinition.getName(); final SActor sActor = actorMappingService.getActor(name, processDefinitionId); actorInstance = ModelConvertor.toActorInstance(sActor); } catch (final SProcessDefinitionNotFoundException e) { // no rollback need, we only read throw new ProcessDefinitionNotFoundException(e); } catch (final SBonitaException e) { throw new RetrieveException(e); } return actorInstance; }