use of org.wso2.carbon.identity.configuration.mgt.core.ConfigurationManager in project carbon-identity-framework by wso2.
the class ConfigurationManagerComponent method activate.
/**
* Register ConfigurationManager as an OSGI service.
*
* @param componentContext OSGI service component context.
*/
@Activate
protected void activate(ComponentContext componentContext) {
try {
BundleContext bundleContext = componentContext.getBundleContext();
ConfigurationDAO configurationDAO = new ConfigurationDAOImpl();
bundleContext.registerService(ConfigurationDAO.class.getName(), configurationDAO, null);
bundleContext.registerService(ConfigurationDAO.class.getName(), new CachedBackedConfigurationDAO(configurationDAO), null);
ConfigurationManagerConfigurationHolder configurationManagerConfigurationHolder = new ConfigurationManagerConfigurationHolder();
configurationManagerConfigurationHolder.setConfigurationDAOS(configurationDAOs);
bundleContext.registerService(ConfigurationManager.class.getName(), new ConfigurationManagerImpl(configurationManagerConfigurationHolder), null);
ConfigurationManagerComponentDataHolder.getInstance().setConfigurationManagementEnabled(isConfigurationManagementEnabled());
setUseCreatedTime();
} catch (Throwable e) {
log.error("Error while activating ConfigurationManagerComponent.", e);
}
}
use of org.wso2.carbon.identity.configuration.mgt.core.ConfigurationManager in project carbon-identity-framework by wso2.
the class ConfigStoreBasedTemplateHandler method listTemplates.
@Override
public List<Template> listTemplates(String templateType, Integer limit, Integer offset, Condition searchCondition) throws TemplateManagementException {
ConfigurationManager configManager = TemplateManagerDataHolder.getInstance().getConfigurationManager();
try {
Resources resourcesList;
if (searchCondition == null) {
resourcesList = configManager.getResourcesByType(templateType);
} else {
resourcesList = configManager.getTenantResources(searchCondition);
}
return resourcesList.getResources().stream().map(resource -> {
resource.setResourceType(templateType);
return new ResourceToTemplate().apply(resource);
}).collect(Collectors.toList());
} catch (ConfigurationManagementException e) {
if (ConfigurationConstants.ErrorMessages.ERROR_CODE_RESOURCE_TYPE_DOES_NOT_EXISTS.getCode().equals(e.getErrorCode())) {
if (log.isDebugEnabled()) {
log.debug("Template type : '" + templateType + "' has not been created in the database.", e);
}
return Collections.emptyList();
} else if (ConfigurationConstants.ErrorMessages.ERROR_CODE_RESOURCES_DOES_NOT_EXISTS.getCode().equals(e.getErrorCode())) {
if (log.isDebugEnabled()) {
String message = "Templates do not exist for template type: " + templateType;
if (searchCondition != null) {
message = message + ", and search criteria:" + searchCondition.toString();
}
log.debug(message, e);
}
return Collections.emptyList();
}
throw handleServerException(TemplateMgtConstants.ErrorMessages.ERROR_CODE_LIST_TEMPLATES, e, templateType, getTenantDomainFromCarbonContext());
}
}
use of org.wso2.carbon.identity.configuration.mgt.core.ConfigurationManager in project carbon-identity-framework by wso2.
the class ConfigStoreBasedTemplateHandler method addTemplateToConfigStore.
private String addTemplateToConfigStore(Template template) throws TemplateManagementException {
if (!isValidTemplateType(template.getTemplateType().toString())) {
throw handleClientException(TemplateMgtConstants.ErrorMessages.ERROR_CODE_INVALID_TEMPLATE_TYPE, template.getTemplateType().toString());
}
ConfigurationManager configManager = TemplateManagerDataHolder.getInstance().getConfigurationManager();
try {
Resource resource = configManager.addResource(template.getTemplateType().toString(), new TemplateToResourceAdd().apply(template));
configManager.addFile(template.getTemplateType().toString(), template.getTemplateName(), template.getTemplateName() + "_template_object", IOUtils.toInputStream(template.getTemplateScript()));
return resource.getResourceId();
} catch (ConfigurationManagementException e) {
if (ConfigurationConstants.ErrorMessages.ERROR_CODE_RESOURCE_ALREADY_EXISTS.getCode().equals(e.getErrorCode())) {
throw handleClientException(TemplateMgtConstants.ErrorMessages.ERROR_CODE_TEMPLATE_ALREADY_EXIST, e, template.getTemplateName());
} else if (ConfigurationConstants.ErrorMessages.ERROR_CODE_RESOURCE_TYPE_DOES_NOT_EXISTS.getCode().equals(e.getErrorCode())) {
// in the database, create the resource-type and retry the template creation.
try {
createResourceType(template.getTemplateType().toString());
return addTemplateToConfigStore(template);
} catch (ConfigurationManagementException e1) {
throw handleServerException(TemplateMgtConstants.ErrorMessages.ERROR_CODE_INSERT_TEMPLATE, e, template.getTemplateName());
}
} else {
throw handleServerException(TemplateMgtConstants.ErrorMessages.ERROR_CODE_INSERT_TEMPLATE, e, template.getTemplateName());
}
}
}
use of org.wso2.carbon.identity.configuration.mgt.core.ConfigurationManager in project carbon-identity-framework by wso2.
the class ConfigStoreBasedTemplateHandler method createResourceType.
private void createResourceType(String templateType) throws ConfigurationManagementException {
ConfigurationManager configManager = TemplateManagerDataHolder.getInstance().getConfigurationManager();
ResourceTypeAdd resourceType = new ResourceTypeAdd();
resourceType.setName(templateType);
resourceType.setDescription("This is the resource type for " + templateType);
configManager.addResourceType(resourceType);
}
use of org.wso2.carbon.identity.configuration.mgt.core.ConfigurationManager in project carbon-identity-framework by wso2.
the class ConfigurationManagementUtils method getConfigurationManager.
public static ConfigurationManager getConfigurationManager() {
ConfigurationManagerComponentDataHolder.setUseCreatedTime(true);
ConfigurationManagerConfigurationHolder configurationHolder = new ConfigurationManagerConfigurationHolder();
ConfigurationDAO configurationDAO = new ConfigurationDAOImpl();
configurationHolder.setConfigurationDAOS(Collections.singletonList(configurationDAO));
ConfigurationManager configurationManager = new ConfigurationManagerImpl(configurationHolder);
ConfigurationManagerComponentDataHolder.getInstance().setConfigurationManagementEnabled(true);
return configurationManager;
}
Aggregations