protected ConfigurationParameters mapConfigurationParameters( BeanConfig config, String... mapping) { Map<String, String> map = newHashMap(); if (config != null) { Properties properties = config.getParameters(); for (int i = 0; i + 1 < mapping.length; i += 2) { String value = properties.getProperty(mapping[i]); if (value != null) { map.put(mapping[i + 1], value); } } } return ConfigurationParameters.of(map); }
protected ConfigurationParameters mapConfigurationParameters( BeanConfig config, String... mapping) { Map<String, String> map = newHashMap(); if (config != null) { Properties properties = config.getParameters(); for (int i = 0; i + 1 < mapping.length; i += 2) { String value = properties.getProperty(mapping[i]); if (value != null) { map.put(mapping[i + 1], value); } } } return ConfigurationParameters.of(map); }
/** * Copies a bean configuration. * * @param config the configuration to be copied */ public BeanConfig(BeanConfig config) { this(config.getClassName(), config.getParameters()); setConnectionFactory(config.connectionFactory); }
/** * Copies a bean configuration. * * @param config the configuration to be copied */ public BeanConfig(BeanConfig config) { this(config.getClassName(), config.getParameters()); setConnectionFactory(config.connectionFactory); }
/** * @see AccessControlProviderFactory#createProvider(Session, WorkspaceSecurityConfig) */ public AccessControlProvider createProvider(Session systemSession, WorkspaceSecurityConfig config) throws RepositoryException { String workspaceName = systemSession.getWorkspace().getName(); AccessControlProvider prov; Map props; if (config != null && config.getAccessControlProviderConfig() != null) { BeanConfig bc = config.getAccessControlProviderConfig(); prov = bc.newInstance(AccessControlProvider.class); props = bc.getParameters(); } else { log.debug("No ac-provider configuration for workspace " + workspaceName + " -> using defaults."); if (workspaceName.equals(secWorkspaceName) && !workspaceName.equals(defaultWorkspaceName)) { // UserAccessControlProvider is designed to work with an extra // workspace storing user and groups. therefore avoid returning // this ac provider for the default workspace. prov = new UserAccessControlProvider(); } else { prov = new ACLProvider(); } log.debug("Default provider for workspace " + workspaceName + " = " + prov.getClass().getName()); props = Collections.emptyMap(); } prov.init(systemSession, props); return prov; } }
/** * @see AccessControlProviderFactory#createProvider(Session, WorkspaceSecurityConfig) */ public AccessControlProvider createProvider(Session systemSession, WorkspaceSecurityConfig config) throws RepositoryException { String workspaceName = systemSession.getWorkspace().getName(); AccessControlProvider prov; Map props; if (config != null && config.getAccessControlProviderConfig() != null) { BeanConfig bc = config.getAccessControlProviderConfig(); prov = bc.newInstance(AccessControlProvider.class); props = bc.getParameters(); } else { log.debug("No ac-provider configuration for workspace " + workspaceName + " -> using defaults."); if (workspaceName.equals(secWorkspaceName) && !workspaceName.equals(defaultWorkspaceName)) { // UserAccessControlProvider is designed to work with an extra // workspace storing user and groups. therefore avoid returning // this ac provider for the default workspace. prov = new UserAccessControlProvider(); } else { prov = new ACLProvider(); } log.debug("Default provider for workspace " + workspaceName + " = " + prov.getClass().getName()); props = Collections.emptyMap(); } prov.init(systemSession, props); return prov; } }