Package adams.flow.source
Class HttpRequest
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ErrorHandler
,OutputProducer
,Serializable
,Comparable
public class HttpRequest extends AbstractSimpleSource
Submits the (optional) form parameters to the specified URL and forwards the retrieved HTML as text.
Cookies can be retrieved and stored in internal storage, to be re-used with the next request.
Input/output:
- generates:
adams.flow.container.HttpRequestResult
Container information:
- adams.flow.container.HttpRequestResult: Status code, Body, Cookies
-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: HttpRequest
-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
-url <adams.core.base.BaseURL> (property: URL) The URL for the request. default: http://localhost
-method <GET|POST|PUT|DELETE|PATCH> (property: method) The method to use for the request. default: POST
-header <adams.core.base.BaseKeyValuePair> [-header ...] (property: headers) The (optional) request headers to send. default:
-parameter <adams.core.base.BaseKeyValuePair> [-parameter ...] (property: parameters) The form parameters to send with the request. default:
-cookies <adams.flow.control.StorageName> (property: cookies) The (optional) storage value with the cookies (map of strings). default: storage
- Version:
- $Revision$
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected StorageName
m_Cookies
the storage value containing the cookies to use.protected BaseKeyValuePair[]
m_Headers
the (optional) request headers.protected com.github.fracpete.requests4j.request.Method
m_Method
the action method to use.protected BaseKeyValuePair[]
m_Parameters
the form parameters.protected BaseURL
m_URL
the URL to send the form parameters to.-
Fields inherited from class adams.flow.source.AbstractSimpleSource
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 HttpRequest()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
cookiesTipText()
Returns the tip text for this property.void
defineOptions()
Adds options to the internal list of options.protected String
doExecute()
Executes the flow item.Class[]
generates()
Returns the class of objects that it generates.StorageName
getCookies()
Returns the (optional) storage name with the cookies to use.BaseKeyValuePair[]
getHeaders()
Returns the (optional) request headers for the request.com.github.fracpete.requests4j.request.Method
getMethod()
Returns the method for the request.BaseKeyValuePair[]
getParameters()
Returns the form parameters for the request.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.BaseURL
getURL()
Returns the URL for the request.String
globalInfo()
Returns a string describing the object.String
headersTipText()
Returns the tip text for this property.String
methodTipText()
Returns the tip text for this property.String
parametersTipText()
Returns the tip text for this property.void
setCookies(StorageName value)
Sets the (optional) storage name with the cookies to use.void
setHeaders(BaseKeyValuePair[] value)
Sets the (optional) request headers for the request.void
setMethod(com.github.fracpete.requests4j.request.Method value)
Sets the method for the request.void
setParameters(BaseKeyValuePair[] value)
Sets the form parameters for the request.void
setURL(BaseURL value)
Sets the URL for the request.String
URLTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.source.AbstractSimpleSource
hasPendingOutput, initialize, output, reset
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, backupState, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, execute, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, postExecute, preExecute, pruneBackup, pruneBackup, restoreState, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged, wrapUp
-
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, execute, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged, wrapUp
-
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_URL
protected BaseURL m_URL
the URL to send the form parameters to.
-
m_Method
protected com.github.fracpete.requests4j.request.Method m_Method
the action method to use.
-
m_Headers
protected BaseKeyValuePair[] m_Headers
the (optional) request headers.
-
m_Parameters
protected BaseKeyValuePair[] m_Parameters
the form parameters.
-
m_Cookies
protected StorageName m_Cookies
the storage value containing the cookies to use.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Description copied from class:AbstractOptionHandler
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
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceActor
- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractActor
- Returns:
- null if no info available, otherwise short string
-
setURL
public void setURL(BaseURL value)
Sets the URL for the request.- Parameters:
value
- the URL
-
getURL
public BaseURL getURL()
Returns the URL for the request.- Returns:
- the URL
-
URLTipText
public String URLTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setMethod
public void setMethod(com.github.fracpete.requests4j.request.Method value)
Sets the method for the request.- Parameters:
value
- the method
-
getMethod
public com.github.fracpete.requests4j.request.Method getMethod()
Returns the method for the request.- Returns:
- the method
-
methodTipText
public String methodTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setHeaders
public void setHeaders(BaseKeyValuePair[] value)
Sets the (optional) request headers for the request.- Parameters:
value
- the headers
-
getHeaders
public BaseKeyValuePair[] getHeaders()
Returns the (optional) request headers for the request.- Returns:
- the headers
-
headersTipText
public String headersTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setParameters
public void setParameters(BaseKeyValuePair[] value)
Sets the form parameters for the request.- Parameters:
value
- the parameters
-
getParameters
public BaseKeyValuePair[] getParameters()
Returns the form parameters for the request.- Returns:
- the parameters
-
parametersTipText
public String parametersTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setCookies
public void setCookies(StorageName value)
Sets the (optional) storage name with the cookies to use.- Parameters:
value
- the storage name
-
getCookies
public StorageName getCookies()
Returns the (optional) storage name with the cookies to use.- Returns:
- the storage name
-
cookiesTipText
public String cookiesTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Returns:
- the Class of the generated tokens
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecute
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
-
-