protected Map<String, DecisionDefinition> getDecisionDefinitionsForTenant(List<DecisionDefinition> decisionDefinitions) { Map<String, DecisionDefinition> definitionsForTenant = new HashMap<String, DecisionDefinition>(); for (DecisionDefinition definition : decisionDefinitions) { definitionsForTenant.put(definition.getTenantId(), definition); } return definitionsForTenant; }
@Override public void checkEvaluateDecision(DecisionDefinition decisionDefinition) { if (!getTenantManager().isAuthenticatedTenant(decisionDefinition.getTenantId())) { throw LOG.exceptionCommandWithUnauthorizedTenant("evaluate the decision '"+ decisionDefinition.getId() + "'"); } }
@Override public void checkEvaluateDecision(DecisionDefinition decisionDefinition) { if (!getTenantManager().isAuthenticatedTenant(decisionDefinition.getTenantId())) { throw LOG.exceptionCommandWithUnauthorizedTenant("evaluate the decision '"+ decisionDefinition.getId() + "'"); } }
public void testQuerySortingAsc() { // exclude definitions without tenant id because of database-specific ordering List<DecisionDefinition> decisionDefinitions = repositoryService .createDecisionDefinitionQuery() .tenantIdIn(TENANT_ONE, TENANT_TWO) .orderByTenantId() .asc() .list(); assertThat(decisionDefinitions.size(), is(2)); assertThat(decisionDefinitions.get(0).getTenantId(), is(TENANT_ONE)); assertThat(decisionDefinitions.get(1).getTenantId(), is(TENANT_TWO)); }
public DecisionDefinition build() { DecisionDefinition mockDefinition = mock(DecisionDefinition.class); when(mockDefinition.getId()).thenReturn(id); when(mockDefinition.getCategory()).thenReturn(category); when(mockDefinition.getName()).thenReturn(name); when(mockDefinition.getKey()).thenReturn(key); when(mockDefinition.getVersion()).thenReturn(version); when(mockDefinition.getResourceName()).thenReturn(resource); when(mockDefinition.getDiagramResourceName()).thenReturn(diagramResource); when(mockDefinition.getDeploymentId()).thenReturn(deploymentId); when(mockDefinition.getTenantId()).thenReturn(tenantId); when(mockDefinition.getDecisionRequirementsDefinitionId()).thenReturn(decisionRequirementsDefinitionId); when(mockDefinition.getDecisionRequirementsDefinitionKey()).thenReturn(decisionRequirementsDefinitionKey); when(mockDefinition.getVersionTag()).thenReturn(versionTag); return mockDefinition; }
public void testQuerySortingDesc() { // exclude definitions without tenant id because of database-specific ordering List<DecisionDefinition> decisionDefinitions = repositoryService .createDecisionDefinitionQuery() .tenantIdIn(TENANT_ONE, TENANT_TWO) .orderByTenantId() .desc() .list(); assertThat(decisionDefinitions.size(), is(2)); assertThat(decisionDefinitions.get(0).getTenantId(), is(TENANT_TWO)); assertThat(decisionDefinitions.get(1).getTenantId(), is(TENANT_ONE)); }
@Test public void getDecisionDefinitionWithAuthenticatedTenant() { identityService.setAuthentication("user", null, Arrays.asList(TENANT_ONE)); DecisionDefinition definition = repositoryService.getDecisionDefinition(decisionDefinitionId); assertThat(definition.getTenantId(), is(TENANT_ONE)); }
protected HistoricDecisionInstanceEntity createDecisionEvaluatedEvt(DmnDecisionLogicEvaluationEvent evaluationEvent, HistoricDecisionInstanceEntity rootDecisionInstance) { // create event instance HistoricDecisionInstanceEntity event = newDecisionInstanceEventEntity(evaluationEvent); // initialize event initDecisionInstanceEvent(event, evaluationEvent, HistoryEventTypes.DMN_DECISION_EVALUATE, rootDecisionInstance); // set the user id if there is an authenticated user and no process instance setUserId(event); DecisionDefinition decisionDefinition = (DecisionDefinition) evaluationEvent.getDecision(); String tenantId = decisionDefinition.getTenantId(); if (tenantId == null) { tenantId = provideTenantId(decisionDefinition, event); } event.setTenantId(tenantId); return event; }
protected HistoricDecisionInstanceEntity createDecisionEvaluatedEvt(DmnDecisionLogicEvaluationEvent evaluationEvent, HistoricDecisionInstanceEntity rootDecisionInstance) { // create event instance HistoricDecisionInstanceEntity event = newDecisionInstanceEventEntity(evaluationEvent); // initialize event initDecisionInstanceEvent(event, evaluationEvent, HistoryEventTypes.DMN_DECISION_EVALUATE, rootDecisionInstance); // set the user id if there is an authenticated user and no process instance setUserId(event); DecisionDefinition decisionDefinition = (DecisionDefinition) evaluationEvent.getDecision(); String tenantId = decisionDefinition.getTenantId(); if (tenantId == null) { tenantId = provideTenantId(decisionDefinition, event); } event.setTenantId(tenantId); return event; }
@Test public void updateHistoryTimeToLiveWithAuthenticatedTenant() { identityService.setAuthentication("user", null, Arrays.asList(TENANT_ONE)); repositoryService.updateDecisionDefinitionHistoryTimeToLive(decisionDefinitionId, 6); DecisionDefinition definition = repositoryService.getDecisionDefinition(decisionDefinitionId); assertThat(definition.getTenantId(), is(TENANT_ONE)); assertThat(definition.getHistoryTimeToLive(), is(6)); }
@Test public void getDecisionDefinitionDisabledTenantCheck() { processEngineConfiguration.setTenantCheckEnabled(false); identityService.setAuthentication("user", null, null); DecisionDefinition definition = repositoryService.getDecisionDefinition(decisionDefinitionId); assertThat(definition.getTenantId(), is(TENANT_ONE)); }
@Test public void updateHistoryTimeToLiveDisabledTenantCheck() { processEngineConfiguration.setTenantCheckEnabled(false); identityService.setAuthentication("user", null, null); repositoryService.updateDecisionDefinitionHistoryTimeToLive(decisionDefinitionId, 6); DecisionDefinition definition = repositoryService.getDecisionDefinition(decisionDefinitionId); assertThat(definition.getTenantId(), is(TENANT_ONE)); assertThat(definition.getHistoryTimeToLive(), is(6)); }
public void testQueryByLatestWithoutTenantId() { // deploy a second version without tenant id deployment(DMN); DecisionDefinitionQuery query = repositoryService .createDecisionDefinitionQuery() .decisionDefinitionKey(DECISION_DEFINITION_KEY) .latestVersion() .withoutTenantId(); assertThat(query.count(), is(1L)); DecisionDefinition decisionDefinition = query.singleResult(); assertThat(decisionDefinition.getTenantId(), is(nullValue())); assertThat(decisionDefinition.getVersion(), is(2)); }
public void testQueryByLatestWithTenantId() { // deploy a second version for tenant one deploymentForTenant(TENANT_ONE, DMN); DecisionDefinitionQuery query = repositoryService .createDecisionDefinitionQuery() .decisionDefinitionKey(DECISION_DEFINITION_KEY) .latestVersion() .tenantIdIn(TENANT_ONE); assertThat(query.count(), is(1L)); DecisionDefinition decisionDefinition = query.singleResult(); assertThat(decisionDefinition.getTenantId(), is(TENANT_ONE)); assertThat(decisionDefinition.getVersion(), is(2)); query = repositoryService .createDecisionDefinitionQuery() .decisionDefinitionKey(DECISION_DEFINITION_KEY) .latestVersion() .tenantIdIn(TENANT_TWO); assertThat(query.count(), is(1L)); decisionDefinition = query.singleResult(); assertThat(decisionDefinition.getTenantId(), is(TENANT_TWO)); assertThat(decisionDefinition.getVersion(), is(1)); }
public static DecisionDefinitionDto fromDecisionDefinition(DecisionDefinition definition) { DecisionDefinitionDto dto = new DecisionDefinitionDto(); dto.id = definition.getId(); dto.key = definition.getKey(); dto.category = definition.getCategory(); dto.name = definition.getName(); dto.version = definition.getVersion(); dto.resource = definition.getResourceName(); dto.deploymentId = definition.getDeploymentId(); dto.decisionRequirementsDefinitionId = definition.getDecisionRequirementsDefinitionId(); dto.decisionRequirementsDefinitionKey = definition.getDecisionRequirementsDefinitionKey(); dto.tenantId = definition.getTenantId(); dto.historyTimeToLive = definition.getHistoryTimeToLive(); dto.versionTag = definition.getVersionTag(); return dto; }
public static DecisionDefinitionDto fromDecisionDefinition(DecisionDefinition definition) { DecisionDefinitionDto dto = new DecisionDefinitionDto(); dto.id = definition.getId(); dto.key = definition.getKey(); dto.category = definition.getCategory(); dto.name = definition.getName(); dto.version = definition.getVersion(); dto.resource = definition.getResourceName(); dto.deploymentId = definition.getDeploymentId(); dto.decisionRequirementsDefinitionId = definition.getDecisionRequirementsDefinitionId(); dto.decisionRequirementsDefinitionKey = definition.getDecisionRequirementsDefinitionKey(); dto.tenantId = definition.getTenantId(); dto.historyTimeToLive = definition.getHistoryTimeToLive(); dto.versionTag = definition.getVersionTag(); return dto; }
protected Map<String, DecisionDefinition> getDecisionDefinitionsForTenant(List<DecisionDefinition> decisionDefinitions) { Map<String, DecisionDefinition> definitionsForTenant = new HashMap<String, DecisionDefinition>(); for (DecisionDefinition definition : decisionDefinitions) { definitionsForTenant.put(definition.getTenantId(), definition); } return definitionsForTenant; }
@Override public void checkEvaluateDecision(DecisionDefinition decisionDefinition) { if (!getTenantManager().isAuthenticatedTenant(decisionDefinition.getTenantId())) { throw LOG.exceptionCommandWithUnauthorizedTenant("evaluate the decision '"+ decisionDefinition.getId() + "'"); } }
public void testQuerySortingAsc() { // exclude definitions without tenant id because of database-specific ordering List<DecisionDefinition> decisionDefinitions = repositoryService .createDecisionDefinitionQuery() .tenantIdIn(TENANT_ONE, TENANT_TWO) .orderByTenantId() .asc() .list(); assertThat(decisionDefinitions.size(), is(2)); assertThat(decisionDefinitions.get(0).getTenantId(), is(TENANT_ONE)); assertThat(decisionDefinitions.get(1).getTenantId(), is(TENANT_TWO)); }
@Test public void updateHistoryTimeToLiveDisabledTenantCheck() { processEngineConfiguration.setTenantCheckEnabled(false); identityService.setAuthentication("user", null, null); repositoryService.updateDecisionDefinitionHistoryTimeToLive(decisionDefinitionId, 6); DecisionDefinition definition = repositoryService.getDecisionDefinition(decisionDefinitionId); assertThat(definition.getTenantId(), is(TENANT_ONE)); assertThat(definition.getHistoryTimeToLive(), is(6)); }