use of eu.bcvsolutions.idm.acc.dto.ConnectorTypeDto in project CzechIdMng by bcvsolutions.
the class AdGroupConnectorTypeTest method testReopenSystemWithoutOptionsAttributes.
@Test
public void testReopenSystemWithoutOptionsAttributes() {
ConnectorType connectorType = connectorManager.getConnectorType(MockAdGroupConnectorType.NAME);
ConnectorTypeDto connectorTypeDto = connectorManager.convertTypeToDto(connectorType);
SysSystemDto systemDto = createSystem(this.getHelper().createName(), connectorTypeDto);
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.SYSTEM_DTO_KEY, systemDto.getId().toString());
IdmFormDefinitionDto operationOptionsConnectorFormDefinition = systemService.getOperationOptionsConnectorFormDefinition(systemDto);
// Try to find attribute for one of container. If exist -> change code = simulate delete.
IdmFormAttributeDto userSearchContainerAttribute = operationOptionsConnectorFormDefinition.getMappedAttributeByCode(MockAdGroupConnectorType.USER_SEARCH_CONTAINER_KEY);
if (userSearchContainerAttribute != null) {
userSearchContainerAttribute.setCode(getHelper().createName());
formService.saveAttribute(userSearchContainerAttribute);
}
connectorType = connectorManager.getConnectorType(MockAdGroupConnectorType.NAME);
connectorTypeDto = connectorManager.convertTypeToDto(connectorType);
connectorTypeDto.setReopened(true);
connectorTypeDto.getEmbedded().put(MockAdGroupConnectorType.SYSTEM_DTO_KEY, systemDto);
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.SYSTEM_DTO_KEY, systemDto.getId().toString());
ConnectorTypeDto loadedConnectorTypeDto = connectorManager.load(connectorTypeDto);
assertNotNull(loadedConnectorTypeDto);
// Clean
systemService.delete(systemDto);
}
use of eu.bcvsolutions.idm.acc.dto.ConnectorTypeDto in project CzechIdMng by bcvsolutions.
the class AdGroupConnectorTypeTest method testOfDefaultSync.
@Test
public void testOfDefaultSync() {
ConnectorType connectorType = connectorManager.getConnectorType(MockAdGroupConnectorType.NAME);
ConnectorTypeDto connectorTypeDto = connectorManager.convertTypeToDto(connectorType);
SysSystemDto systemDto = createSystem(this.getHelper().createName(), connectorTypeDto);
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.SYSTEM_DTO_KEY, systemDto.getId().toString());
StringBuilder sb = new StringBuilder();
sb.append(this.getHelper().createName());
sb.append(AdGroupConnectorType.LINE_SEPARATOR);
sb.append(this.getHelper().createName());
String groupContainersMock = sb.toString();
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.GROUP_CONTAINER_KEY, groupContainersMock);
connectorTypeDto.setWizardStepName(MockAdGroupConnectorType.STEP_FOUR);
// Generate mock schema.
generateMockSchema(systemDto);
// Execute step four.
connectorManager.execute(connectorTypeDto);
SysSyncConfigFilter syncConfigFilter = new SysSyncConfigFilter();
syncConfigFilter.setSystemId(systemDto.getId());
AbstractSysSyncConfigDto syncConfigDto = syncConfigService.find(syncConfigFilter, null).getContent().stream().findFirst().orElse(null);
assertTrue(syncConfigDto instanceof SysSyncRoleConfigDto);
SysSyncRoleConfigDto syncRoleConfigDto = (SysSyncRoleConfigDto) syncConfigDto;
assertFalse(syncRoleConfigDto.isMembershipSwitch());
assertFalse(syncRoleConfigDto.isAssignRoleSwitch());
assertFalse(syncRoleConfigDto.isAssignCatalogueSwitch());
assertFalse(syncRoleConfigDto.isForwardAcmSwitch());
assertFalse(syncRoleConfigDto.isSkipValueIfExcludedSwitch());
assertNotNull(syncRoleConfigDto.getAssignCatalogueMappingAttribute());
assertNotNull(syncRoleConfigDto.getSkipValueIfExcludedMappingAttribute());
assertNotNull(syncRoleConfigDto.getForwardAcmMappingAttribute());
assertNotNull(syncRoleConfigDto.getRoleMembersMappingAttribute());
assertNotNull(syncRoleConfigDto.getRoleIdentifiersMappingAttribute());
assertNull(syncRoleConfigDto.getMemberIdentifierAttribute());
assertNull(syncRoleConfigDto.getMemberOfAttribute());
// Clean
systemService.delete(systemDto);
}
use of eu.bcvsolutions.idm.acc.dto.ConnectorTypeDto in project CzechIdMng by bcvsolutions.
the class AdGroupConnectorTypeTest method createSystem.
private SysSystemDto createSystem(String systemName, ConnectorTypeDto connectorTypeDto) {
connectorTypeDto.setReopened(false);
connectorManager.load(connectorTypeDto);
assertNotNull(connectorTypeDto);
String fakeHost = this.getHelper().createName();
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.HOST, fakeHost);
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.PORT, "636");
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.USER, fakeHost);
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.PASSWORD, fakeHost);
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.SSL_SWITCH, "false");
connectorTypeDto.getMetadata().put(MockAdGroupConnectorType.SYSTEM_NAME, systemName);
connectorTypeDto.setWizardStepName(MockAdGroupConnectorType.STEP_ONE);
// Execute the first step.
ConnectorTypeDto stepExecutedResult = connectorManager.execute(connectorTypeDto);
BaseDto systemDto = stepExecutedResult.getEmbedded().get(MockAdGroupConnectorType.SYSTEM_DTO_KEY);
assertNotNull("System ID cannot be null!", systemDto);
SysSystemDto system = systemService.get(systemDto.getId());
assertNotNull(system);
return system;
}
use of eu.bcvsolutions.idm.acc.dto.ConnectorTypeDto in project CzechIdMng by bcvsolutions.
the class DefaultConnectorManager method convertIcConnectorInfoToDto.
@Override
public ConnectorTypeDto convertIcConnectorInfoToDto(IcConnectorInfo info) {
ConnectorTypeDto connectorTypeDto = new ConnectorTypeDto();
connectorTypeDto.setId(info.getConnectorKey().getConnectorName());
connectorTypeDto.setName(info.getConnectorDisplayName());
connectorTypeDto.setModule(EntityUtils.getModule(this.getClass()));
connectorTypeDto.setConnectorName(info.getConnectorKey().getConnectorName());
connectorTypeDto.setIconKey("default-connector");
connectorTypeDto.setVersion(info.getConnectorKey().getBundleVersion());
connectorTypeDto.setHideParentConnector(true);
connectorTypeDto.setOrder(1000);
return connectorTypeDto;
}
use of eu.bcvsolutions.idm.acc.dto.ConnectorTypeDto in project CzechIdMng by bcvsolutions.
the class CsvConnectorTypeTest method testCsvSecondStep.
@Test
public void testCsvSecondStep() {
ConnectorTypeDto mockCsvConnectorTypeDto = new ConnectorTypeDto();
mockCsvConnectorTypeDto.setReopened(false);
mockCsvConnectorTypeDto.setId(CsvConnectorType.NAME);
mockCsvConnectorTypeDto.setConnectorName(csvConnectorType.getConnectorName());
ConnectorTypeDto csvConnectorTypeDto = connectorManager.load(mockCsvConnectorTypeDto);
assertNotNull(csvConnectorTypeDto);
csvConnectorTypeDto.getMetadata().put(CsvConnectorType.FILE_PATH, CSV_TEST_FILE);
csvConnectorTypeDto.setWizardStepName(CsvConnectorType.STEP_ONE_CREATE_SYSTEM);
// Execute the first step.
ConnectorTypeDto stepExecutedResult = connectorManager.execute(csvConnectorTypeDto);
// The system had to be created.
BaseDto system = stepExecutedResult.getEmbedded().get(CsvConnectorType.SYSTEM_DTO_KEY);
assertTrue(system instanceof SysSystemDto);
SysSystemDto systemDto = systemService.get(system.getId());
assertNotNull(systemDto);
SysSchemaAttributeFilter schemaAttributeFilter = new SysSchemaAttributeFilter();
schemaAttributeFilter.setSystemId(systemDto.getId());
schemaAttributeFilter.setName("username");
SysSchemaAttributeDto usernameAttributeDto = schemaAttributeService.find(schemaAttributeFilter, null).getContent().stream().findFirst().orElse(null);
assertNotNull(usernameAttributeDto);
// Set username attribute as primary attribute for second wizard step.
stepExecutedResult.getMetadata().put(CsvConnectorType.PRIMARY_SCHEMA_ATTRIBUTE, usernameAttributeDto.getId().toString());
// Execute the second step.
csvConnectorTypeDto.setWizardStepName(CsvConnectorType.STEP_TWO_SELECT_PK);
csvConnectorTypeDto.getMetadata().put(CsvConnectorType.SYSTEM_DTO_KEY, systemDto.getId().toString());
connectorManager.execute(csvConnectorTypeDto);
// Load connector properties from created system.
IcConnectorConfiguration connectorConfiguration = systemService.getConnectorConfiguration(systemDto);
IcConfigurationProperties configurationProperties = connectorConfiguration.getConfigurationProperties();
// Check uid attribute.
IcConfigurationProperty uidProperty = configurationProperties.getProperties().stream().filter(property -> CsvConnectorType.CONNECTOR_UID.equals(property.getName())).findFirst().orElse(null);
assertNotNull(uidProperty);
// UID attribute have to be "username" now.
assertEquals(usernameAttributeDto.getName(), uidProperty.getValue());
// Delete created system.
systemService.delete(systemDto);
}
Aggregations