Class ExecutionContextImpl
- java.lang.Object
-
- com.dtolabs.rundeck.core.execution.ExecutionContextImpl
-
- All Implemented Interfaces:
ExecutionContext
,StepExecutionContext
,NodeExecutionContext
public class ExecutionContextImpl extends java.lang.Object implements ExecutionContext, StepExecutionContext, NodeExecutionContext
ExecutionContextImpl is ...
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ExecutionContextImpl.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ExecutionContextImpl.Builder
builder()
static ExecutionContextImpl.Builder
builder(ExecutionContext context)
static ExecutionContextImpl.Builder
builder(StepExecutionContext context)
<T> java.util.Optional<T>
componentForType(java.lang.Class<T> type)
<T> java.util.Collection<T>
componentsForType(java.lang.Class<T> type)
INodeSet
filteredNodes()
com.dtolabs.rundeck.core.authorization.AuthContext
getAuthContext()
java.lang.String
getCharsetEncoding()
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>>
getDataContext()
Return data context setDataContext
getDataContextObject()
ExecutionReference
getExecution()
Gets a reference to the execution being processed.ExecutionListener
getExecutionListener()
ExecutionLogger
getExecutionLogger()
FlowControl
getFlowControl()
Framework
getFramework()
java.lang.String
getFrameworkProject()
Get the framework project nameIFramework
getIFramework()
JobService
getJobService()
LoggingManager
getLoggingManager()
int
getLoglevel()
Return the loglevel value, using the Ant equivalents: DEBUG=1,java.lang.String
getNodeRankAttribute()
INodeSet
getNodes()
Return the node selectorNodesSelector
getNodeSelector()
Return the node selectorProjectNodeService
getNodeService()
OrchestratorConfig
getOrchestrator()
SharedOutputContext
getOutputContext()
PluginControlService
getPluginControlService()
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>>
getPrivateDataContext()
DataContext
getPrivateDataContextObject()
MultiDataContext<ContextView,DataContext>
getSharedDataContext()
INodeEntry
getSingleNodeContext()
java.util.List<java.lang.Integer>
getStepContext()
int
getStepNumber()
StorageTree
getStorageTree()
int
getThreadCount()
java.lang.String
getUser()
com.dtolabs.rundeck.core.authorization.UserAndRolesAuthContext
getUserAndRolesAuthContext()
WorkflowExecutionListener
getWorkflowExecutionListener()
boolean
isKeepgoing()
boolean
isNodeRankOrderAscending()
void
setAuthContext(com.dtolabs.rundeck.core.authorization.UserAndRolesAuthContext authContext)
void
setCharsetEncoding(java.lang.String charsetEncoding)
<T> int
useAllComponentsOfType(java.lang.Class<T> type, java.util.function.Consumer<T> consumer)
apply the consumer to components of the given type, and remove "useOnce" components after use<T> java.util.Optional<T>
useSingleComponentOfType(java.lang.Class<T> type)
apply the consumer to a single component of the given type, and remove the component if it is "useOnce"<T> boolean
useSingleComponentOfType(java.lang.Class<T> type, java.util.function.Consumer<java.util.Optional<T>> consumer)
apply the consumer to a single component of the given type, and remove the component if it is "useOnce"-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.dtolabs.rundeck.core.execution.ExecutionContext
getComponentList
-
-
-
-
Method Detail
-
builder
public static ExecutionContextImpl.Builder builder()
-
builder
public static ExecutionContextImpl.Builder builder(ExecutionContext context)
-
builder
public static ExecutionContextImpl.Builder builder(StepExecutionContext context)
-
componentsForType
public <T> java.util.Collection<T> componentsForType(java.lang.Class<T> type)
- Specified by:
componentsForType
in interfaceExecutionContext
- Returns:
- collection of components of specified type
-
useAllComponentsOfType
public <T> int useAllComponentsOfType(java.lang.Class<T> type, java.util.function.Consumer<T> consumer)
Description copied from interface:ExecutionContext
apply the consumer to components of the given type, and remove "useOnce" components after use- Specified by:
useAllComponentsOfType
in interfaceExecutionContext
-
useSingleComponentOfType
public <T> boolean useSingleComponentOfType(java.lang.Class<T> type, java.util.function.Consumer<java.util.Optional<T>> consumer)
Description copied from interface:ExecutionContext
apply the consumer to a single component of the given type, and remove the component if it is "useOnce"- Specified by:
useSingleComponentOfType
in interfaceExecutionContext
- Returns:
- a single component for the given type
-
useSingleComponentOfType
public <T> java.util.Optional<T> useSingleComponentOfType(java.lang.Class<T> type)
Description copied from interface:ExecutionContext
apply the consumer to a single component of the given type, and remove the component if it is "useOnce"- Specified by:
useSingleComponentOfType
in interfaceExecutionContext
- Returns:
- optional component object
-
componentForType
public <T> java.util.Optional<T> componentForType(java.lang.Class<T> type)
- Specified by:
componentForType
in interfaceExecutionContext
- Returns:
- a single component for the given type
-
getSharedDataContext
public MultiDataContext<ContextView,DataContext> getSharedDataContext()
- Specified by:
getSharedDataContext
in interfaceExecutionContext
- Returns:
- the node specific context data keyed by node name
-
getAuthContext
public com.dtolabs.rundeck.core.authorization.AuthContext getAuthContext()
- Specified by:
getAuthContext
in interfaceExecutionContext
- Returns:
- the authorization context
-
getUserAndRolesAuthContext
public com.dtolabs.rundeck.core.authorization.UserAndRolesAuthContext getUserAndRolesAuthContext()
- Specified by:
getUserAndRolesAuthContext
in interfaceExecutionContext
-
setAuthContext
public void setAuthContext(com.dtolabs.rundeck.core.authorization.UserAndRolesAuthContext authContext)
-
getStorageTree
public StorageTree getStorageTree()
- Specified by:
getStorageTree
in interfaceExecutionContext
- Returns:
- the storage service
-
getFlowControl
public FlowControl getFlowControl()
- Specified by:
getFlowControl
in interfaceStepExecutionContext
- Returns:
- object to control workflow
-
getCharsetEncoding
public java.lang.String getCharsetEncoding()
- Specified by:
getCharsetEncoding
in interfaceExecutionContext
- Returns:
- the charset encoding to use for handling output, or null for default
-
setCharsetEncoding
public void setCharsetEncoding(java.lang.String charsetEncoding)
-
getOutputContext
public SharedOutputContext getOutputContext()
- Specified by:
getOutputContext
in interfaceExecutionContext
- Returns:
- context for emitting new data
-
getSingleNodeContext
public INodeEntry getSingleNodeContext()
- Specified by:
getSingleNodeContext
in interfaceNodeExecutionContext
- Returns:
- current node if in single node context
-
getLoggingManager
public LoggingManager getLoggingManager()
- Specified by:
getLoggingManager
in interfaceExecutionContext
- Returns:
- manager for capturing logs
-
getFrameworkProject
public java.lang.String getFrameworkProject()
Description copied from interface:ExecutionContext
Get the framework project name- Specified by:
getFrameworkProject
in interfaceExecutionContext
- Returns:
- project name
-
getUser
public java.lang.String getUser()
- Specified by:
getUser
in interfaceExecutionContext
- Returns:
- username
-
getNodeSelector
public NodesSelector getNodeSelector()
Description copied from interface:ExecutionContext
Return the node selector- Specified by:
getNodeSelector
in interfaceExecutionContext
- Returns:
- nodeset
-
getNodes
public INodeSet getNodes()
Description copied from interface:ExecutionContext
Return the node selector- Specified by:
getNodes
in interfaceExecutionContext
- Returns:
- nodeset
-
filteredNodes
public INodeSet filteredNodes()
- Specified by:
filteredNodes
in interfaceStepExecutionContext
- Returns:
- filtered node set
-
getLoglevel
public int getLoglevel()
Description copied from interface:ExecutionContext
Return the loglevel value, using the Ant equivalents: DEBUG=1,- Specified by:
getLoglevel
in interfaceExecutionContext
- Returns:
- log level from 0-4: ERR,WARN,INFO,VERBOSE,DEBUG
-
getDataContext
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> getDataContext()
Description copied from interface:ExecutionContext
Return data context set- Specified by:
getDataContext
in interfaceExecutionContext
- Returns:
- map of data contexts keyed by name
-
getDataContextObject
public DataContext getDataContextObject()
- Specified by:
getDataContextObject
in interfaceExecutionContext
-
getPrivateDataContextObject
public DataContext getPrivateDataContextObject()
- Specified by:
getPrivateDataContextObject
in interfaceExecutionContext
-
getExecutionListener
public ExecutionListener getExecutionListener()
- Specified by:
getExecutionListener
in interfaceExecutionContext
-
getWorkflowExecutionListener
public WorkflowExecutionListener getWorkflowExecutionListener()
- Specified by:
getWorkflowExecutionListener
in interfaceExecutionContext
-
getExecutionLogger
public ExecutionLogger getExecutionLogger()
- Specified by:
getExecutionLogger
in interfaceExecutionContext
-
getFramework
public Framework getFramework()
- Specified by:
getFramework
in interfaceExecutionContext
- Returns:
- the framework
-
getIFramework
public IFramework getIFramework()
- Specified by:
getIFramework
in interfaceExecutionContext
- Returns:
- the framework
-
getThreadCount
public int getThreadCount()
- Specified by:
getThreadCount
in interfaceExecutionContext
- Returns:
- node dispatch threadcount
-
isKeepgoing
public boolean isKeepgoing()
- Specified by:
isKeepgoing
in interfaceExecutionContext
- Returns:
- node dispatch keepgoing
-
getPrivateDataContext
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> getPrivateDataContext()
- Specified by:
getPrivateDataContext
in interfaceExecutionContext
- Returns:
- the data context in the private scope
-
getNodeRankAttribute
public java.lang.String getNodeRankAttribute()
- Specified by:
getNodeRankAttribute
in interfaceExecutionContext
- Returns:
- the node rank attribute to use for ranking
-
isNodeRankOrderAscending
public boolean isNodeRankOrderAscending()
- Specified by:
isNodeRankOrderAscending
in interfaceExecutionContext
- Returns:
- true if the node rank order is ascending
-
getStepNumber
public int getStepNumber()
- Specified by:
getStepNumber
in interfaceStepExecutionContext
- Returns:
- the step being executed.
-
getStepContext
public java.util.List<java.lang.Integer> getStepContext()
- Specified by:
getStepContext
in interfaceStepExecutionContext
- Returns:
- the stack of step numbers within the larger workflow context.
-
getJobService
public JobService getJobService()
- Specified by:
getJobService
in interfaceExecutionContext
- Returns:
- the job service
-
getNodeService
public ProjectNodeService getNodeService()
- Specified by:
getNodeService
in interfaceExecutionContext
- Returns:
- the node service
-
getOrchestrator
public OrchestratorConfig getOrchestrator()
- Specified by:
getOrchestrator
in interfaceExecutionContext
-
getPluginControlService
public PluginControlService getPluginControlService()
- Specified by:
getPluginControlService
in interfaceExecutionContext
-
getExecution
public ExecutionReference getExecution()
Description copied from interface:ExecutionContext
Gets a reference to the execution being processed.- Specified by:
getExecution
in interfaceExecutionContext
- Returns:
- An
ExecutionReference
to the execution, or null if doesn't apply.
-
-