Package adams.docker.simpledocker
Class Run
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.core.command.AbstractExternalCommand
-
- adams.core.command.AbstractAsyncCapableExternalCommand
-
- adams.core.command.AbstractAsyncCapableExternalCommandWithOptions
-
- adams.docker.simpledocker.AbstractDockerCommandWithOptions
-
- adams.docker.simpledocker.Run
-
- All Implemented Interfaces:
adams.core.CleanUpHandler
,adams.core.command.AsyncCapableExternalCommand
,adams.core.command.ExternalCommand
,adams.core.command.ExternalCommandWithOptions
,adams.core.Destroyable
,adams.core.GlobalInfoSupporter
,adams.core.logging.LoggingLevelHandler
,adams.core.logging.LoggingSupporter
,adams.core.option.OptionHandler
,adams.core.QuickInfoSupporter
,adams.core.SizeOfHandler
,adams.core.Stoppable
,adams.core.StoppableWithFeedback
,DockerCommand
,adams.flow.core.FlowContextHandler
,Serializable
- Direct Known Subclasses:
RunWithArgs
public class Run extends AbstractDockerCommandWithOptions
Performs the 'docker run' command in either blocking or async fashion. The latter is useful for long-running commands as it supports incremental output.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected PullType
m_PullType
how to pull.protected boolean
m_RemoveContainer
whether to remove the container after execution.protected boolean
m_RunAsUser
whether to run in user context (-u $(id -u):$(id -g)).-
Fields inherited from class adams.docker.simpledocker.AbstractDockerCommandWithOptions
m_Connection
-
Fields inherited from class adams.core.command.AbstractAsyncCapableExternalCommandWithOptions
m_Options, m_OptionsString
-
Fields inherited from class adams.core.command.AbstractAsyncCapableExternalCommand
m_Blocking, m_ProcessOutput
-
-
Constructor Summary
Constructors Constructor Description Run()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected List<String>
buildCommand()
Assembles the command to run.protected String
check()
Hook method for performing checks before executing the command.void
defineOptions()
Adds options to the internal list of options.PullType
getActualPullType()
Returns the pull type to use.PullType
getPullType()
Returns how to pull the image (overriding setting fromSimpleDockerConnection
).String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.boolean
getRemoveContainer()
Returns whether to remove the container after execution.boolean
getRunAsUser()
Returns whether to run the container as the current user rather than root.String
globalInfo()
Returns a string describing the object.String
pullTypeTipText()
Returns the tip text for this property.String
removeContainerTipText()
Returns the tip text for this property.String
runAsUserTipText()
Returns the tip text for this property.void
setPullType(PullType value)
Sets how to pull the image (overriding setting fromSimpleDockerConnection
).void
setRemoveContainer(boolean value)
Sets whether to remove the container after execution.void
setRunAsUser(boolean value)
Sets whether to run the container as the current user rather than root.-
Methods inherited from class adams.docker.simpledocker.AbstractDockerCommandWithOptions
cleanUp, doBlockingExecute, doBlockingExecute, getConnection, setConnection
-
Methods inherited from class adams.core.command.AbstractAsyncCapableExternalCommandWithOptions
getActualOptions, getOptions, getOptionsString, optionsStringTipText, optionsTipText, setOptions, setOptions, setOptions, setOptionsString, setOptionsString
-
Methods inherited from class adams.core.command.AbstractAsyncCapableExternalCommand
addStdErr, addStdOut, blockingTipText, doAsyncExecute, getBlocking, getDefaultBlocking, isFinished, isUsingBlocking, setBlocking, stopExecution
-
Methods inherited from class adams.core.command.AbstractExternalCommand
addFormattedOutput, commandResultToError, execute, generates, getDefaultOutputFormatter, getDefaultOutputType, getDefaultStdErrProcessor, getDefaultStdOutProcessor, getFlowContext, getLastCommand, getOutputFormatter, getOutputType, getStdErrProcessor, getStdOutProcessor, hasLastCommand, hasOutput, initialize, isExecuted, isRunning, isStopped, log, log, log, output, outputFormatterTipText, outputTypeTipText, reset, setFlowContext, setOutputFormatter, setOutputType, setStdErrProcessor, setStdOutProcessor, stdErrProcessorTipText, stdOutProcessorTipText
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.command.AsyncCapableExternalCommand
addStdErr, addStdOut, blockingTipText, getBlocking, setBlocking
-
Methods inherited from interface adams.core.command.ExternalCommand
addFormattedOutput, execute, generates, getLastCommand, getOutputFormatter, getOutputType, getStdErrProcessor, getStdOutProcessor, hasLastCommand, hasOutput, isExecuted, isFinished, isRunning, isUsingBlocking, output, outputFormatterTipText, outputTypeTipText, setOutputFormatter, setOutputType, setStdErrProcessor, setStdOutProcessor, stdErrProcessorTipText, stdOutProcessorTipText
-
-
-
-
Field Detail
-
m_RemoveContainer
protected boolean m_RemoveContainer
whether to remove the container after execution.
-
m_RunAsUser
protected boolean m_RunAsUser
whether to run in user context (-u $(id -u):$(id -g)).
-
m_PullType
protected PullType m_PullType
how to pull.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceadams.core.GlobalInfoSupporter
- Specified by:
globalInfo
in classadams.core.option.AbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceadams.core.option.OptionHandler
- Overrides:
defineOptions
in classadams.core.command.AbstractAsyncCapableExternalCommandWithOptions
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceadams.core.QuickInfoSupporter
- Overrides:
getQuickInfo
in classadams.core.command.AbstractAsyncCapableExternalCommandWithOptions
- Returns:
- null if no info available, otherwise short string
-
setRemoveContainer
public void setRemoveContainer(boolean value)
Sets whether to remove the container after execution.- Parameters:
value
- true if to remove
-
getRemoveContainer
public boolean getRemoveContainer()
Returns whether to remove the container after execution.- Returns:
- true if to remove
-
removeContainerTipText
public String removeContainerTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setRunAsUser
public void setRunAsUser(boolean value)
Sets whether to run the container as the current user rather than root.- Parameters:
value
- true if to run as user
-
getRunAsUser
public boolean getRunAsUser()
Returns whether to run the container as the current user rather than root.- Returns:
- true if to run as user
-
runAsUserTipText
public String runAsUserTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPullType
public void setPullType(PullType value)
Sets how to pull the image (overriding setting fromSimpleDockerConnection
).- Parameters:
value
- the type
-
getPullType
public PullType getPullType()
Returns how to pull the image (overriding setting fromSimpleDockerConnection
).- Returns:
- the type
-
pullTypeTipText
public String pullTypeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getActualPullType
public PullType getActualPullType()
Returns the pull type to use.- Returns:
- the type
-
check
protected String check()
Hook method for performing checks before executing the command.- Overrides:
check
in classAbstractDockerCommandWithOptions
- Returns:
- null if successful, otherwise error message
-
buildCommand
protected List<String> buildCommand()
Assembles the command to run. Docker executable gets added separately.- Overrides:
buildCommand
in classAbstractDockerCommandWithOptions
- Returns:
- the command
-
-