Class PropertyResolverFactory
- java.lang.Object
-
- com.dtolabs.rundeck.core.plugins.configuration.PropertyResolverFactory
-
public class PropertyResolverFactory extends java.lang.Object
Factory for different property resolvers for use by plugins
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
PropertyResolverFactory.Factory
create resolver using service name and provider name argumentsstatic class
PropertyResolverFactory.ScopedResolver
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
FRAMEWORK_PREFIX
static java.lang.String
PLUGIN_PREFIX
static java.lang.String
PROJECT_PREFIX
static java.lang.String
SEP
-
Constructor Summary
Constructors Constructor Description PropertyResolverFactory()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static PropertyResolver
createFrameworkProjectRuntimeResolver(IFramework framework, java.lang.String projectName, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
static PropertyResolver
createFrameworkProjectRuntimeResolver(IPropertyLookup framework, IPropertyLookup projectLookup, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
static PropertyResolverFactory.Factory
createFrameworkProjectRuntimeResolverFactory(IFramework framework, java.lang.String projectName, java.util.Map<java.lang.String,java.lang.Object> instanceProperties)
static PropertyResolver
createInstanceResolver(java.util.Map<java.lang.String,java.lang.Object> instanceProperties)
static PropertyResolver
createInstanceResolver(java.util.Properties instanceProperties)
static PropertyResolver
createPluginRuntimeResolver(ExecutionContext context, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
static PropertyResolver
createPluginRuntimeResolver(java.lang.String project, IFramework framework, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
static PropertyResolver
createResolver(PropertyRetriever instanceRetriever, PropertyRetriever projectRetriever, PropertyRetriever frameworkRetriever)
static PropertyResolverFactory.Factory
creates(PropertyResolver resolver)
static PropertyResolver
createStepPluginRuntimeResolver(StepExecutionContext context, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
static java.lang.String
frameworkPropertyPrefix(java.lang.String basePrefix)
static PropertyRetriever
instanceRetriever(java.util.Map<java.lang.String,?> configuration)
static PropertyRetriever
instanceRetriever(java.util.Properties configuration)
static java.util.Map<java.lang.String,java.lang.Object>
mapPropertyValues(java.util.List<Property> list, PropertyResolver resolver)
Return All property values for the input property set mapped by name to value.static PropertyResolverFactory.Factory
pluginPrefixedScoped(PropertyRetriever instance, PropertyRetriever projectScope, PropertyRetriever frameworkScope)
static java.lang.String
pluginPropertyPrefix(java.lang.String stepType, java.lang.String pluginName)
static java.lang.String
projectPropertyPrefix(java.lang.String basePrefix)
static PropertyResolver
withDefaultScope(PropertyScope scope, PropertyResolver resolver)
static PropertyResolver
withDefaultValues(PropertyResolver resolver, PropertyRetriever defaults)
-
-
-
Field Detail
-
SEP
public static final java.lang.String SEP
- See Also:
- Constant Field Values
-
PROJECT_PREFIX
public static final java.lang.String PROJECT_PREFIX
- See Also:
- Constant Field Values
-
FRAMEWORK_PREFIX
public static final java.lang.String FRAMEWORK_PREFIX
- See Also:
- Constant Field Values
-
PLUGIN_PREFIX
public static final java.lang.String PLUGIN_PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
pluginPropertyPrefix
public static java.lang.String pluginPropertyPrefix(java.lang.String stepType, java.lang.String pluginName)
-
projectPropertyPrefix
public static java.lang.String projectPropertyPrefix(java.lang.String basePrefix)
-
frameworkPropertyPrefix
public static java.lang.String frameworkPropertyPrefix(java.lang.String basePrefix)
-
mapPropertyValues
public static java.util.Map<java.lang.String,java.lang.Object> mapPropertyValues(java.util.List<Property> list, PropertyResolver resolver)
Return All property values for the input property set mapped by name to value.- Parameters:
list
- property listresolver
- property resolver- Returns:
- All mapped properties by name and value.
-
createStepPluginRuntimeResolver
public static PropertyResolver createStepPluginRuntimeResolver(StepExecutionContext context, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
- Parameters:
context
- step contextinstanceProperties
- instance property valuespluginType
- service type nameproviderName
- provider name- Returns:
- Create a PropertyResolver for a plugin for resolving Framework, Project and instance scoped properties.
-
createPluginRuntimeResolver
public static PropertyResolver createPluginRuntimeResolver(ExecutionContext context, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
- Parameters:
context
- step contextinstanceProperties
- instance property valuespluginType
- service type nameproviderName
- provider name- Returns:
- Create a PropertyResolver for a plugin for resolving Framework, Project and instance scoped properties.
-
createPluginRuntimeResolver
public static PropertyResolver createPluginRuntimeResolver(java.lang.String project, IFramework framework, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
- Parameters:
project
- project nameframework
- frameorkinstanceProperties
- instance property valuespluginType
- service type nameproviderName
- provider name- Returns:
- Create a PropertyResolver for a plugin for resolving Framework, Project and instance scoped properties.
-
createFrameworkProjectRuntimeResolver
public static PropertyResolver createFrameworkProjectRuntimeResolver(IFramework framework, java.lang.String projectName, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
- Parameters:
framework
- the frameworkprojectName
- name of the project, or null to disable project property resolutionpluginType
- service type nameproviderName
- provider nameinstanceProperties
- instance properties, or null- Returns:
- Create a PropertyResolver for a plugin for resolving Framework, Project and instance scoped properties.
-
createFrameworkProjectRuntimeResolverFactory
public static PropertyResolverFactory.Factory createFrameworkProjectRuntimeResolverFactory(IFramework framework, java.lang.String projectName, java.util.Map<java.lang.String,java.lang.Object> instanceProperties)
- Parameters:
framework
- the frameworkprojectName
- name of the project, or null to disable project property resolutioninstanceProperties
- instance properties, or null- Returns:
- Create a PropertyResolver for a plugin for resolving Framework, Project and instance scoped properties.
-
creates
public static PropertyResolverFactory.Factory creates(PropertyResolver resolver)
-
createFrameworkProjectRuntimeResolver
public static PropertyResolver createFrameworkProjectRuntimeResolver(IPropertyLookup framework, IPropertyLookup projectLookup, java.util.Map<java.lang.String,java.lang.Object> instanceProperties, java.lang.String pluginType, java.lang.String providerName)
- Parameters:
framework
- the framework property lookupprojectLookup
- the project property lookuppluginType
- service type nameproviderName
- provider nameinstanceProperties
- instance properties, or null- Returns:
- Create a PropertyResolver for a plugin for resolving Framework, Project and instance scoped properties.
-
createResolver
public static PropertyResolver createResolver(PropertyRetriever instanceRetriever, PropertyRetriever projectRetriever, PropertyRetriever frameworkRetriever)
- Parameters:
instanceRetriever
- retriever for instance propertiesprojectRetriever
- retriever for project propertiesframeworkRetriever
- retriever for framework properties- Returns:
- Create a resolver from a set of retrievers, possibly null
-
pluginPrefixedScoped
public static PropertyResolverFactory.Factory pluginPrefixedScoped(PropertyRetriever instance, PropertyRetriever projectScope, PropertyRetriever frameworkScope)
- Parameters:
instance
- instance dataprojectScope
- project scopeframeworkScope
- scope- Returns:
- Create a resolver from a set of retrievers, possibly null
-
createInstanceResolver
public static PropertyResolver createInstanceResolver(java.util.Map<java.lang.String,java.lang.Object> instanceProperties)
- Parameters:
instanceProperties
- properties- Returns:
- Create a PropertyResolver for a plugin for resolving only instance scoped properties.
-
createInstanceResolver
public static PropertyResolver createInstanceResolver(java.util.Properties instanceProperties)
- Parameters:
instanceProperties
- properties- Returns:
- Create a PropertyResolver for a plugin for resolving only instance scoped properties.
-
instanceRetriever
public static PropertyRetriever instanceRetriever(java.util.Properties configuration)
- Parameters:
configuration
- from a Map of values- Returns:
- Create a basic retriever
-
instanceRetriever
public static PropertyRetriever instanceRetriever(java.util.Map<java.lang.String,?> configuration)
- Parameters:
configuration
- from a Map of values- Returns:
- Create a basic retriever
-
withDefaultScope
public static PropertyResolver withDefaultScope(PropertyScope scope, PropertyResolver resolver)
- Parameters:
scope
- default scoperesolver
- resolver- Returns:
- a new PropertyResolver using the given scope by default if the requested property scope is unspecified
-
withDefaultValues
public static PropertyResolver withDefaultValues(PropertyResolver resolver, PropertyRetriever defaults)
- Parameters:
resolver
- resolverdefaults
- retriever for default values- Returns:
- a new PropertyResolver which will return values taken from the defaults if the given resolver returns null
-
-