Package com.dtolabs.rundeck.core.common
Class ProjectNodeSupport
- java.lang.Object
-
- com.dtolabs.rundeck.core.common.ProjectNodeSupport
-
- All Implemented Interfaces:
IProjectNodes,java.io.Closeable,java.lang.AutoCloseable
public class ProjectNodeSupport extends java.lang.Object implements IProjectNodes, java.io.Closeable
Manage node source loading for a project
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classProjectNodeSupport.ProjectWriteableNodes-
Nested classes/interfaces inherited from interface com.dtolabs.rundeck.core.common.IProjectNodes
IProjectNodes.ReadableProjectNodes, IProjectNodes.WriteableProjectNodes
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringNODE_ENHANCER_PROP_PREFIXstatic java.lang.StringPROJECT_RESOURCES_FILE_PROPERTYstatic java.lang.StringPROJECT_RESOURCES_MERGE_NODE_ATTRIBUTESstatic java.lang.StringPROJECT_RESOURCES_URL_PROPERTYstatic java.lang.StringRESOURCES_SOURCE_PROP_PREFIX
-
Constructor Summary
Constructors Constructor Description ProjectNodeSupport(IRundeckProjectConfig projectConfig, ResourceFormatGeneratorService resourceFormatGeneratorService, ResourceModelSourceService resourceModelSourceService)Deprecated.use#ProjectNodeSupport(IRundeckProjectConfig, ResourceFormatGeneratorService, ResourceModelSourceService, Function)ProjectNodeSupport(IRundeckProjectConfig projectConfig, ResourceFormatGeneratorService resourceFormatGeneratorService, ResourceModelSourceService resourceModelSourceService, NodeSourceLoader nodeSourceLoader)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ResourceModelSourceasModelSource(IProjectNodes nodes)voidclose()ResourceModelSourcecreateCachingSource(ResourceModelSource origin, java.lang.String ident, java.lang.String descr, SourceFactory.CacheType type, boolean logging)static java.util.Map<java.lang.String,java.lang.Object>createMapExtraProperties(java.util.Map<java.lang.String,java.lang.Object> extraProps)static java.util.PropertiesgenerateExtraProperties(java.lang.String propPrefix, java.util.Map<java.lang.String,java.lang.Object> extra)INodeSetgetNodeSet()Returns the set of nodes for the projectIRundeckProjectConfiggetProjectConfig()java.util.ArrayList<java.lang.Throwable>getResourceModelSourceExceptions()java.util.Map<java.lang.String,java.lang.Throwable>getResourceModelSourceExceptionsMap()java.util.List<IProjectNodes.ReadableProjectNodes>getResourceModelSources()java.util.Collection<IProjectNodes.WriteableProjectNodes>getWriteableResourceModelSources()java.util.List<ExtPluginConfiguration>listNodeEnhancerConfigurations()list the configurations of node enhancer providers.java.util.List<ExtPluginConfiguration>listPluginConfigurations(java.lang.String keyprefix, java.lang.String serviceName)Return a list of resource model configurationjava.util.List<ExtPluginConfiguration>listPluginConfigurations(java.lang.String keyprefix, java.lang.String serviceName, boolean extra)Return a list of resource model configurationstatic java.util.List<ExtPluginConfiguration>listPluginConfigurations(java.util.Map<java.lang.String,java.lang.String> props, java.lang.String keyprefix, java.lang.String serviceName)Return a list of resource model configurationstatic java.util.List<ExtPluginConfiguration>listPluginConfigurations(java.util.Map<java.lang.String,java.lang.String> props, java.lang.String keyprefix, java.lang.String serviceName, boolean extra)Return a list of resource model configurationjava.util.List<java.util.Map<java.lang.String,java.lang.Object>>listResourceModelConfigurations()list the configurations of resource model providers.static java.util.List<java.util.Map<java.lang.String,java.lang.Object>>listResourceModelConfigurations(java.util.Properties props)Return a list of resource model configurationjava.util.List<ExtPluginConfiguration>listResourceModelPluginConfigurations()list the configurations of resource model providers.static java.util.PropertiesserializePluginConfigurations(java.lang.String prefix, java.util.List<ExtPluginConfiguration> configs, boolean extra)static java.util.PropertiesserializePluginConfigurations(java.lang.String prefix, java.util.List<PluginConfiguration> configs)static voidserializeProp(java.lang.String prefix, java.util.Properties projProps, int count, PluginConfiguration config)static java.util.PropertiesserializeResourceModelConfigurations(java.util.List<java.util.Map<java.lang.String,java.lang.Object>> configs)
-
-
-
Field Detail
-
PROJECT_RESOURCES_URL_PROPERTY
public static final java.lang.String PROJECT_RESOURCES_URL_PROPERTY
- See Also:
- Constant Field Values
-
PROJECT_RESOURCES_FILE_PROPERTY
public static final java.lang.String PROJECT_RESOURCES_FILE_PROPERTY
- See Also:
- Constant Field Values
-
RESOURCES_SOURCE_PROP_PREFIX
public static final java.lang.String RESOURCES_SOURCE_PROP_PREFIX
- See Also:
- Constant Field Values
-
NODE_ENHANCER_PROP_PREFIX
public static final java.lang.String NODE_ENHANCER_PROP_PREFIX
- See Also:
- Constant Field Values
-
PROJECT_RESOURCES_MERGE_NODE_ATTRIBUTES
public static final java.lang.String PROJECT_RESOURCES_MERGE_NODE_ATTRIBUTES
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ProjectNodeSupport
public ProjectNodeSupport(IRundeckProjectConfig projectConfig, ResourceFormatGeneratorService resourceFormatGeneratorService, ResourceModelSourceService resourceModelSourceService, NodeSourceLoader nodeSourceLoader)
- Parameters:
projectConfig-resourceFormatGeneratorService-nodeSourceLoader- model source provider
-
ProjectNodeSupport
public ProjectNodeSupport(IRundeckProjectConfig projectConfig, ResourceFormatGeneratorService resourceFormatGeneratorService, ResourceModelSourceService resourceModelSourceService)
Deprecated.use#ProjectNodeSupport(IRundeckProjectConfig, ResourceFormatGeneratorService, ResourceModelSourceService, Function)- Parameters:
projectConfig-resourceFormatGeneratorService-
-
-
Method Detail
-
getNodeSet
public INodeSet getNodeSet()
Returns the set of nodes for the project- Specified by:
getNodeSetin interfaceIProjectNodes- Returns:
- an instance of
INodeSet
-
getResourceModelSourceExceptions
public java.util.ArrayList<java.lang.Throwable> getResourceModelSourceExceptions()
- Specified by:
getResourceModelSourceExceptionsin interfaceIProjectNodes- Returns:
- the set of exceptions produced by the last attempt to invoke all node providers
-
getResourceModelSourceExceptionsMap
public java.util.Map<java.lang.String,java.lang.Throwable> getResourceModelSourceExceptionsMap()
- Specified by:
getResourceModelSourceExceptionsMapin interfaceIProjectNodes- Returns:
- the set of exceptions produced by the last attempt to invoke all node providers
-
getResourceModelSources
public java.util.List<IProjectNodes.ReadableProjectNodes> getResourceModelSources()
- Specified by:
getResourceModelSourcesin interfaceIProjectNodes- Returns:
- all sources
-
getWriteableResourceModelSources
public java.util.Collection<IProjectNodes.WriteableProjectNodes> getWriteableResourceModelSources()
- Specified by:
getWriteableResourceModelSourcesin interfaceIProjectNodes- Returns:
- writeable sources
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
asModelSource
public static ResourceModelSource asModelSource(IProjectNodes nodes)
- Parameters:
nodes- IProjectNodes- Returns:
- model source view of the nodes
-
createCachingSource
public ResourceModelSource createCachingSource(ResourceModelSource origin, java.lang.String ident, java.lang.String descr, SourceFactory.CacheType type, boolean logging)
- Parameters:
logging-origin- origin sourceident- unique identity for this cached source, used in filenamedescr- description of the source, used in logginglogging- if true, log cache access- Returns:
- new source
-
listResourceModelConfigurations
public java.util.List<java.util.Map<java.lang.String,java.lang.Object>> listResourceModelConfigurations()
list the configurations of resource model providers.- Specified by:
listResourceModelConfigurationsin interfaceIProjectNodes- Returns:
- a list of maps containing:
- type - provider type name
- props - configuration properties
-
listResourceModelPluginConfigurations
public java.util.List<ExtPluginConfiguration> listResourceModelPluginConfigurations()
list the configurations of resource model providers.- Specified by:
listResourceModelPluginConfigurationsin interfaceIProjectNodes- Returns:
- a list of PluginConfiguration
-
listNodeEnhancerConfigurations
public java.util.List<ExtPluginConfiguration> listNodeEnhancerConfigurations()
list the configurations of node enhancer providers.- Specified by:
listNodeEnhancerConfigurationsin interfaceIProjectNodes- Returns:
- a list of PluginConfiguration
-
serializeResourceModelConfigurations
public static java.util.Properties serializeResourceModelConfigurations(java.util.List<java.util.Map<java.lang.String,java.lang.Object>> configs)
- Returns:
- Properties form for the serialized list of model source configurations
-
serializePluginConfigurations
public static java.util.Properties serializePluginConfigurations(java.lang.String prefix, java.util.List<PluginConfiguration> configs)- Returns:
- Properties form for the serialized list of indexed plugin configurations with a prefix
-
serializeProp
public static void serializeProp(java.lang.String prefix, java.util.Properties projProps, int count, PluginConfiguration config)
-
serializePluginConfigurations
public static java.util.Properties serializePluginConfigurations(java.lang.String prefix, java.util.List<ExtPluginConfiguration> configs, boolean extra)- Parameters:
extra- if true, include extra data- Returns:
- Properties form for the serialized list of indexed plugin configurations with a prefix
-
generateExtraProperties
public static java.util.Properties generateExtraProperties(java.lang.String propPrefix, java.util.Map<java.lang.String,java.lang.Object> extra)
-
listResourceModelConfigurations
public static java.util.List<java.util.Map<java.lang.String,java.lang.Object>> listResourceModelConfigurations(java.util.Properties props)
Return a list of resource model configuration- Parameters:
props- properties- Returns:
- List of Maps, each map containing "type": String, "props":Properties
-
listPluginConfigurations
public java.util.List<ExtPluginConfiguration> listPluginConfigurations(java.lang.String keyprefix, java.lang.String serviceName)
Return a list of resource model configuration- Specified by:
listPluginConfigurationsin interfaceIProjectNodes- Parameters:
serviceName-keyprefix- prefix for properties- Returns:
- List of Maps, each map containing "type": String, "props":Properties
-
listPluginConfigurations
public java.util.List<ExtPluginConfiguration> listPluginConfigurations(java.lang.String keyprefix, java.lang.String serviceName, boolean extra)
Return a list of resource model configuration- Specified by:
listPluginConfigurationsin interfaceIProjectNodes- Parameters:
serviceName-keyprefix- prefix for properties- Returns:
- List of Maps, each map containing "type": String, "props":Properties
-
listPluginConfigurations
public static java.util.List<ExtPluginConfiguration> listPluginConfigurations(java.util.Map<java.lang.String,java.lang.String> props, java.lang.String keyprefix, java.lang.String serviceName)
Return a list of resource model configuration- Parameters:
serviceName- service nameprops- propertieskeyprefix- prefix for properties- Returns:
- List of Maps, each map containing "type": String, "props":Properties
-
listPluginConfigurations
public static java.util.List<ExtPluginConfiguration> listPluginConfigurations(java.util.Map<java.lang.String,java.lang.String> props, java.lang.String keyprefix, java.lang.String serviceName, boolean extra)
Return a list of resource model configuration- Parameters:
serviceName- service nameprops- propertieskeyprefix- prefix for properties- Returns:
- List of Maps, each map containing "type": String, "props":Properties
-
createMapExtraProperties
public static java.util.Map<java.lang.String,java.lang.Object> createMapExtraProperties(java.util.Map<java.lang.String,java.lang.Object> extraProps)
-
getProjectConfig
public IRundeckProjectConfig getProjectConfig()
-
-