public JiraJdbcDirectoryConfiguration toJiraJdbcConfiguration(Directory directory) { JiraJdbcDirectoryConfiguration configuration = new JiraJdbcDirectoryConfiguration(); configuration.setDirectoryId(directory.getId() != null ? directory.getId() : 0); configuration.setActive(directory.isActive()); configuration.setName(directory.getName()); configuration.setDatasourceJndiName( directory.getAttributes().get(JiraJdbcDirectoryConfiguration.JNDI_NAME_ATTRIBUTE_KEY)); return configuration; }
private Map<String, String> getDirectories() { Map<String, String> directories = new LinkedHashMap<String, String>(); // switch keys and values because the Crowd map is back-to-front for (Directory directory : crowdDirectoryService.findAllDirectories()) { if (directory.getType() == DirectoryType.INTERNAL || directory.getType() == DirectoryType.DELEGATING) { directories.put(directory.getId().toString(), directory.getName()); } } return directories; }
public InternalDirectoryConfiguration toInternalConfiguration(Directory directory) { InternalDirectoryConfiguration configuration = new InternalDirectoryConfiguration(); configuration.setDirectoryId(directory.getId() != null ? directory.getId() : 0); configuration.setActive(directory.isActive()); configuration.setName(directory.getName()); Map<String, String> attributes = directory.getAttributes(); String useNestedGroups = attributes.get(DirectoryImpl.ATTRIBUTE_KEY_USE_NESTED_GROUPS); if (useNestedGroups != null) { configuration.setNestedGroupsEnabled(Boolean.valueOf(useNestedGroups)); } else { configuration.setNestedGroupsEnabled(false); } return configuration; }
public LdapDirectoryConfiguration toLdapConfiguration(Directory directory) { LdapDirectoryConfiguration configuration = new LdapDirectoryConfiguration(); configuration.setLdapPermissionOption( PermissionOption.fromAllowedOperations(directory.getAllowedOperations())); configuration.setActive(directory.isActive()); configuration.setLdapUserEncryption(directory.getEncryptionType()); configuration.setDirectoryId(directory.getId() != null ? directory.getId() : 0); configuration.setType(directory.getImplementationClass()); configuration.setName(directory.getName()); LdapDirectoryAttributes attributes = LdapDirectoryAttributes.fromAttributesMap(directory.getAttributes()); BeanUtils.copyProperties(attributes, configuration); configuration.setCrowdSyncIncrementalEnabled(attributes.isIncrementalSyncEnabled()); return configuration; }
public CrowdDirectoryConfiguration toCrowdConfiguration(Directory directory) { CrowdDirectoryConfiguration configuration = new CrowdDirectoryConfiguration(); configuration.setCrowdPermissionOption( CrowdPermissionOption.fromAllowedOperations(directory.getAllowedOperations())); configuration.setDirectoryId(directory.getId() != null ? directory.getId() : 0); configuration.setActive(directory.isActive()); configuration.setName(directory.getName()); CrowdDirectoryAttributes attributes = CrowdDirectoryAttributes.fromAttributesMap(directory.getAttributes()); BeanUtils.copyProperties(attributes, configuration); // Convert polling interval to minutes to display to user configuration.setCrowdServerSynchroniseIntervalInMin( NumberUtils.toLong(attributes.getCrowdServerSynchroniseIntervalInSeconds()) / 60); return configuration; }
@Override public void doUpgrade(boolean setupMode) throws Exception { // Retrieve all the directories and synchronize them if they are synchronizable. for (Directory directory : crowdDirectoryService.findAllDirectories()) { if (crowdDirectoryService.isDirectorySynchronisable(directory.getId())) { LOG.debug("Reindex all data if indexing is turned on."); try { crowdDirectoryService.synchroniseDirectory(directory.getId(), false); } catch (OperationFailedException e) { LOG.warn( "Directory - '" + directory.getName() + "' was not successfully synchronised." + " You might need to shutdown and restart JIRA after the upgrade completes."); } } } // Reindex super.doUpgrade(setupMode); }
public DelegatingLdapDirectoryConfiguration toDelegatingLdapConfiguration( final Directory directory) { DelegatingLdapDirectoryConfiguration configuration = new DelegatingLdapDirectoryConfiguration(); configuration.setDirectoryId(directory.getId() != null ? directory.getId() : 0); configuration.setActive(directory.isActive()); configuration.setName(directory.getName()); LdapDelegatingDirectoryAttributes attributes = LdapDelegatingDirectoryAttributes.fromAttributesMap(directory.getAttributes()); BeanUtils.copyProperties(attributes, configuration); configuration.setType(attributes.getDelegatedToClass()); final String ldapAutoAddGroups = attributes.getLdapAutoAddGroups(); if (ldapAutoAddGroups != null) { configuration.setLdapAutoAddGroups( pipeSeparatedGroupsToCommaSeparatedGroups(ldapAutoAddGroups)); } else { configuration.setLdapAutoAddGroups(""); } return configuration; }