public List<String> getPluginConfigurationPropertyNames(int resourceTypeId) { ResourceType type = null; try { type = resourceTypeManager.getResourceTypeById(subjectManager.getOverlord(), resourceTypeId); } catch (ResourceTypeNotFoundException rtnfe) { return Collections.emptyList(); } ConfigurationDefinition pluginConfiguriatonDefinition = type.getPluginConfigurationDefinition(); return getPropertyNames(pluginConfiguriatonDefinition); }
ConfigurationDefinition existingConfigurationDefinition = existingType.getPluginConfigurationDefinition(); if (newType.getPluginConfigurationDefinition() != null) { + "new plugin configuration."); entityMgr.persist(newType.getPluginConfigurationDefinition()); existingType.setPluginConfigurationDefinition(newType.getPluginConfigurationDefinition()); .updateConfigurationDefinition(newType.getPluginConfigurationDefinition(), existingConfigurationDefinition);
if (resource.getResourceType().getPluginConfigurationDefinition() == null || resource.getResourceType().getPluginConfigurationDefinition().getPropertyDefinitions().isEmpty()) { return new PageList<PluginConfigurationUpdate>(pc);
/** * Returns a copy of the {@link #getResourceType() resource type}'s default plugin configuration. * * @return copy of the resource's default plugin configuration */ private Configuration createDefaultPluginConfiguration() { ConfigurationDefinition definition = resourceType.getPluginConfigurationDefinition(); if (definition != null) { ConfigurationTemplate template = definition.getDefaultTemplate(); if (template != null) { return template.getConfiguration().deepCopy(); } } // There is no default plugin config template defined - return an empty one. return new Configuration(); } }
/** * Returns the default plugin configuration as defined in the {@link #getResourceType() resource type}'s default * template. This returns a new copy of the default configuration; it will not return the same configuration * instance to any future call to this method. * * @return a new copy of the default plugin configuration */ public Configuration getDefaultPluginConfiguration() { ConfigurationDefinition definition = resourceType.getPluginConfigurationDefinition(); if (definition != null) { ConfigurationTemplate template = definition.getDefaultTemplate(); if (template != null) { return template.getConfiguration().deepCopy(); } } return new Configuration(); // there is no default plugin config available, return an empty one }
Configuration defaultPc = new Configuration(); if (resType.getPluginConfigurationDefinition().getDefaultTemplate() != null) { defaultPc = resType.getPluginConfigurationDefinition().getDefaultTemplate().getConfiguration().deepCopyWithoutProxies();
boolean deleteRoot = true; for (ResourceType resourceType : getResourceTypes(getPluginName())) { ConfigurationDefinition pluginConfigDef = resourceType.getPluginConfigurationDefinition(); ConfigurationTemplate defaultPluginConfigTemplate = pluginConfigDef.getDefaultTemplate(); Configuration defaultPluginConfig = defaultPluginConfigTemplate.getConfiguration();
private Configuration mergeExistingResourcePluginConfiguration(Resource resource, Configuration pluginConfig) { // If there is no update necessary just return the current plugin config of the existing resource Configuration result = resource.getPluginConfiguration(); ConfigurationDefinition configDef = resource.getResourceType().getPluginConfigurationDefinition(); if (null == configDef) { return result; } Configuration existingPluginConfig = resource.getPluginConfiguration().deepCopy(false); Configuration defaultPluginConfig = ConfigurationUtility.createDefaultConfiguration(configDef); boolean configChanged = false; // for each property, update the existing plugin config if discovery has set a non-default value for (String propertyName : pluginConfig.getAllProperties().keySet()) { Property discoveredProp = pluginConfig.get(propertyName); Property defaultProp = defaultPluginConfig.get(propertyName); if (!discoveredProp.equals(defaultProp)) { if (log.isDebugEnabled()) { log.debug("Discovery reported a new version of " + resource + ". Updating value of config property" + " from [" + existingPluginConfig.get(propertyName) + "] to [" + discoveredProp + "]."); } existingPluginConfig.put(discoveredProp); configChanged = true; } } if (configChanged) { result = mergeExistingResourcePluginConfigurationOnServer(resource, existingPluginConfig); } return result; }
static Resource createNewResource(DiscoveredResourceDetails details) { // Use a CopyOnWriteArraySet for childResources to allow the field to be concurrently accessed safely // (i.e. to avoid ConcurrentModificationExceptions). Set<Resource> childResources = new CopyOnWriteArraySet<Resource>(); Resource resource = new Resource(childResources); resource.setUuid(UUID.randomUUID().toString()); resource.setResourceKey(details.getResourceKey()); resource.setName(details.getResourceName()); resource.setVersion(details.getResourceVersion()); resource.setDescription(details.getResourceDescription()); resource.setResourceType(details.getResourceType()); Configuration pluginConfiguration = details.getPluginConfiguration(); ConfigurationUtility.normalizeConfiguration(details.getPluginConfiguration(), details.getResourceType() .getPluginConfigurationDefinition(), false, false); resource.setPluginConfiguration(pluginConfiguration); return resource; }
type.getPluginConfigurationDefinition(), false, false);
Configuration templateConfig = resourceType.getPluginConfigurationDefinition().getDefaultTemplate().getConfiguration(); Configuration newConfig = null; if (tokens.length>3) {
if (resType.getPluginConfigurationDefinition().getDefaultTemplate() != null) { defaultPc = resType.getPluginConfigurationDefinition().getDefaultTemplate().getConfiguration().deepCopyWithoutProxies();