Package adams.flow.control
Class JDeps
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ErrorHandler
,InputConsumer
,OutputProducer
,Serializable
,Comparable
public class JDeps extends AbstractTransformer
Runs jdeps on the classname arriving at the input.
The application's classpath is automatically added to the command-line if no classpath directories or jars are provided.
Classpath directories and jars get combined, but directories take precedence over jars.
Input/output:
- accepts:
java.lang.String
- generates:
java.lang.String
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-name <java.lang.String> (property: name) The name of the actor. default: JDeps
-annotation <adams.core.base.BaseAnnotation> (property: annotations) The annotations to attach to this actor. default:
-skip <boolean> (property: skip) If set to true, transformation is skipped and the input token is just forwarded as it is. default: false
-stop-flow-on-error <boolean> (property: stopFlowOnError) If set to true, the flow execution at this level gets stopped in case this actor encounters an error; the error gets propagated; useful for critical actors. default: false
-silent <boolean> (property: silent) If enabled, then no errors are output in the console; Note: the enclosing actor handler must have this enabled as well. default: false
-executable <adams.core.io.PlaceholderFile> (property: executable) The full path to the jdeps executable.
-classpath-dir <adams.core.io.PlaceholderDirectory> [-classpath-dir ...] (property: classpathDirs) The directories to use instead of the application's classpath. default:
-classpath-jar <adams.core.io.PlaceholderFile> [-classpath-jar ...] (property: classpathJars) The jars to use instead of the application's classpath. default:
-additional <java.lang.String> (property: additionalOptions) Additional options for the jdeps execution, supports inline variables. default:
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected String
m_AdditionalOptions
additional options for jdeps.protected PlaceholderDirectory[]
m_ClasspathDirs
the classpath directories.protected PlaceholderFile[]
m_ClasspathJars
the classpath jars.protected PlaceholderFile
m_Executable
the jdeps executable.-
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
-
Constructor Summary
Constructors Constructor Description JDeps()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class[]
accepts()
Returns the class that the consumer accepts.String
additionalOptionsTipText()
Returns the tip text for this property.protected boolean
canRunJDeps()
Returns whether jdeps can be run.String
classpathDirsTipText()
Returns the tip text for this property.String
classpathJarsTipText()
Returns the tip text for this property.void
defineOptions()
Adds options to the internal list of options.protected String
doExecute()
Executes the flow item.String
executableTipText()
Returns the tip text for this property.Class[]
generates()
Returns the class of objects that it generates.String
getAdditionalOptions()
Returns the additional options for jdeps.PlaceholderDirectory[]
getClasspathDirs()
Returns the classpath directories to use instead of the application's classpath.PlaceholderFile[]
getClasspathJars()
Returns the classpath jars to use instead of the application's classpath.PlaceholderFile
getExecutable()
Returns the jdeps executable.protected String
getJDepsExecutablePath()
Returns the full path of the JDeps executable, if possible.String
globalInfo()
Returns a string describing the object.void
setAdditionalOptions(String value)
Sets the additional options for jdeps.void
setClasspathDirs(PlaceholderDirectory[] value)
Sets the classpath directories to use instead of the application's classpath.void
setClasspathJars(PlaceholderFile[] value)
Sets the classpath jars to use instead of the application's classpath.void
setExecutable(PlaceholderFile value)
Sets the jdeps executable.String
setUp()
Initializes the item for flow execution.-
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, currentInput, execute, hasInput, hasPendingOutput, input, output, postExecute, restoreState, wrapUp
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getQuickInfo, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, preExecute, pruneBackup, pruneBackup, reset, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getQuickInfo, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_Executable
protected PlaceholderFile m_Executable
the jdeps executable.
-
m_ClasspathDirs
protected PlaceholderDirectory[] m_ClasspathDirs
the classpath directories.
-
m_ClasspathJars
protected PlaceholderFile[] m_ClasspathJars
the classpath jars.
-
m_AdditionalOptions
protected String m_AdditionalOptions
additional options for jdeps.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- 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 interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractActor
-
getJDepsExecutablePath
protected String getJDepsExecutablePath()
Returns the full path of the JDeps executable, if possible.- Returns:
- the full path of the executable if possible, otherwise just the executable
-
setExecutable
public void setExecutable(PlaceholderFile value)
Sets the jdeps executable.- Parameters:
value
- the executable
-
getExecutable
public PlaceholderFile getExecutable()
Returns the jdeps executable.- Returns:
- the executable
-
executableTipText
public String executableTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setClasspathDirs
public void setClasspathDirs(PlaceholderDirectory[] value)
Sets the classpath directories to use instead of the application's classpath.- Parameters:
value
- the directories
-
getClasspathDirs
public PlaceholderDirectory[] getClasspathDirs()
Returns the classpath directories to use instead of the application's classpath.- Returns:
- the directories
-
classpathDirsTipText
public String classpathDirsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setClasspathJars
public void setClasspathJars(PlaceholderFile[] value)
Sets the classpath jars to use instead of the application's classpath.- Parameters:
value
- the jars
-
getClasspathJars
public PlaceholderFile[] getClasspathJars()
Returns the classpath jars to use instead of the application's classpath.- Returns:
- the jars
-
classpathJarsTipText
public String classpathJarsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setAdditionalOptions
public void setAdditionalOptions(String value)
Sets the additional options for jdeps.- Parameters:
value
- the additional options
-
getAdditionalOptions
public String getAdditionalOptions()
Returns the additional options for jdeps.- Returns:
- the additional options
-
additionalOptionsTipText
public String additionalOptionsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
canRunJDeps
protected boolean canRunJDeps()
Returns whether jdeps can be run.- Returns:
- true if jdeps can be executed
-
accepts
public Class[] accepts()
Returns the class that the consumer accepts.- Returns:
- the Class of objects that can be processed
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Returns:
- the Class of the generated tokens
-
setUp
public String setUp()
Initializes the item for flow execution.- Specified by:
setUp
in interfaceActor
- Overrides:
setUp
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
- See Also:
AbstractActor.reset()
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecute
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
-
-