Class FcHttpRequestProps

java.lang.Object
de.xima.fc.workflow.taglib.model.BaseActionProps
de.xima.fc.workflow.model.nodes.FcHttpRequestProps
All Implemented Interfaces:
IDescriptionProviding, INameProviding, IAttachToFormRecordProviding, Serializable

@NotNullIf(field="basicAuthProps",dependants="useBasicAuth",target=FcHttpRequestProps.class) @NotNullIf(field="proxyProps",dependants="useProxy",target=FcHttpRequestProps.class) @NotNullIf(field="filesToTransmit",dependants={"httpVerb","httpRequestType"},target=FcHttpRequestProps.class) @NotNullIf(field="customBodyContent",dependants={"httpVerb","httpRequestType"},target=FcHttpRequestProps.class) @NotNullIf(field="useFieldAlias",dependants={"httpVerb","httpRequestType"},target=FcHttpRequestProps.class) @NotNullIf(field="requestParameters",dependants={"httpVerb","httpRequestType"},target=FcHttpRequestProps.class) @NotNullIf(field="sendAllFormValues",dependants={"httpVerb","httpRequestType"},target=FcHttpRequestProps.class) @NotNullIf(field="multipartHeaderType",dependants="httpRequestType",target=FcHttpRequestProps.class) @NotEmptyIf(field="customLocationResolutionUri", dependants="locationResolutionType", target=FcHttpRequestProps.class) @NonEmptySingleFileIf(field="singleFileToTransmit", dependants={"httpVerb","httpRequestType"}, target=FcHttpRequestProps.class) public final class FcHttpRequestProps extends BaseActionProps implements Serializable, IAttachToFormRecordProviding
Model class for the HTTP request workflow action (EWorkflowNodeType.FC_POST_REQUEST).
Since:
7.0.0
Author:
XIMA MEDIA GmbH
See Also:
  • Constructor Details

    • FcHttpRequestProps

      public FcHttpRequestProps()
  • Method Details

    • getBasicAuthProps

      public FcHttpRequestProps.BasicAuthProps getBasicAuthProps()
      Returns:
      Basic authentication settings when enabled for the request, see isUseBasicAuth().
    • getConnectTimeout

      public TimeDuration getConnectTimeout()
      Gets the connection timeout for the HTTP request. The connection timeout is the maximum number of time to wait when attempting to establish a connection to the server.
      Returns:
      The connect timeout.
      Since:
      8.1.0
    • getCustomBodyContent

      public String getCustomBodyContent()
      Returns:
      The custom body content
    • getCustomBodyContentType

      public EHttpContentType getCustomBodyContentType()
      Returns:
      The custom body content type
    • getCustomLocationResolutionUri

      public String getCustomLocationResolutionUri()
      Returns:
      When the resolution type for the Location header is set to RESOLVE_AGAINST_CUSTOM_URI: the custom URI against which to resolve the URI from the Location header.
    • getFilesToTransmit

      public MultiFile getFilesToTransmit()
      Returns:
      Files to transmit with the HTTP request (requires a multipart request, see isForceMultipart()).
    • getHeaderParameters

      public List<Setting<String>> getHeaderParameters()
      Returns:
      Headers to send with the HTTP request.
    • getHttpRequestType

      public EHttpRequestType getHttpRequestType()
      Returns:
      How the body of the HTTP request should be created.
    • getHttpVerb

      public String getHttpVerb()
      Returns:
      The HTTP verb to use for the HTTP request.
    • getInputCharset

      public String getInputCharset()
      Returns:
      Input character set, i.e. the encoding used for sending the HTTP request.
    • getLocationResolutionType

      public EHttpLocationResolutionType getLocationResolutionType()
      Returns:
      When the HTTP response has a 3xx status code with a Location header, how to resolve the URI in that header. Defaults to RESOLVE_AGAINST_REQUEST_URI according to RFC 7231.
    • getMultipartHeaderType

      public EMultipartHeaderType getMultipartHeaderType()
      Returns:
      How to handle Unicode characters in headers of multipart HTTP requests.
    • getOutputCharset

      public String getOutputCharset()
      Returns:
      Output character set, e.g. the expected encoding of the response.
    • getOutputFileName

      public String getOutputFileName()
      Gets the file name to use for writing the content of the HTTP response to a file. May contain placeholders. When empty, the file name is determined automatically, either from the response headers or from the request URL.
      Returns:
      The file name of the file with HTTP response.
    • getPostUrl

      public String getPostUrl()
      Returns:
      URL to which to direct the HTTP request.
    • getProxyProps

      public FcHttpRequestProps.ProxyProps getProxyProps()
      Returns:
      Proxy settings when a proxy is used for the request, see isUseProxy().
    • getReadTimeout

      public TimeDuration getReadTimeout()
      Gets the read timeout for the HTTP request. The read timeout is the maximum number of time to wait for a response from the server after a connection has been established.
      Returns:
      The read timeout.
      Since:
      8.1.0
    • getRequestParameters

      public List<Setting<String>> getRequestParameters()
      Returns:
      Additional form parameters to send with the HTTP request.
    • getSingleFileToTransmit

      public SingleFile getSingleFileToTransmit()
      Returns:
      The SingleFile to transmit as body content
    • getXslTemplate

      public UuidEntityRef getXslTemplate()
      Returns:
      Optional XSL template for transforming the received response.
    • isAllowInvalidCertificates

      public boolean isAllowInvalidCertificates()
      When connecting via HTTPS, whether to allow invalid certificates.
      Returns:
      true if invalid certificates are allowed, false otherwise.
    • isAsResponsePage

      public boolean isAsResponsePage()
      Returns:
      If true, returns the response from the HTTP request as the workflow response. That is, when the user submits a form and the workflow is triggered, send the response back to the user.
    • isAttachToFormRecord

      public boolean isAttachToFormRecord()
      Specified by:
      isAttachToFormRecord in interface IAttachToFormRecordProviding
      Returns:
      Whether files created by the workflow node are attached to the form record.
    • isDisallowMessageBody

      @Deprecated public boolean isDisallowMessageBody()
      Returns:
      When a custom getHttpVerb() is selected, whether a message body is allowed. If no message body is allowed, parameters will be added as URL parameters and no files will be sent.
    • isForceMultipart

      @Deprecated public boolean isForceMultipart()
      Deprecated.
      Returns:
      true if the body type is EHttpRequestType.MULTIPART, false otherwise
    • isSendAllFormValues

      public boolean isSendAllFormValues()
      Returns:
      Whether to send the values of all form fields as form parameters with the HTTP request.
    • isShowBasicAuthProps

      public boolean isShowBasicAuthProps()
      Returns:
      Whether the user can configure the basic authentication settings in the UI.
    • isShowCustomBodyContent

      public boolean isShowCustomBodyContent()
      Returns:
      Whether to show the UI for selecting a custom body content (custom text file or binary file).
    • isShowCustomLocationResolutionUri

      public boolean isShowCustomLocationResolutionUri()
      Returns:
      Whether to show the UI with the input for the custom URI for resolving the Location header should be shown. See also getCustomLocationResolutionUri().
    • isShowDisallowMessageBody

      @Deprecated public boolean isShowDisallowMessageBody()
      Deprecated.
      Returns:
      Whether the user can configure the body message setting in the UI.
    • isShowFilesToTransmit

      public boolean isShowFilesToTransmit()
      Returns:
      Whether the user can configure the files to transmit setting in the UI.
    • isShowHttpRequestTypeSelection

      public boolean isShowHttpRequestTypeSelection()
      Returns:
      Whether to show the UI for selecting the type of body content for the request.
    • isShowMultipartHeaderTypeSelection

      public boolean isShowMultipartHeaderTypeSelection()
      Returns:
      Whether to show the UI for selecting the multipart header type.
    • isShowProxyProps

      public boolean isShowProxyProps()
      Returns:
      Whether the user can configure the proxy settings in the UI.
    • isShowRequestParameters

      public boolean isShowRequestParameters()
      Returns:
      Whether to show the UI for entering custom key value pairs that are included in the request.
    • isShowSendAllFormValues

      public boolean isShowSendAllFormValues()
      Returns:
      Whether to show the UI with the checkbox for including all submitted form field data in the request.
    • isShowSingleFileToTransmit

      public boolean isShowSingleFileToTransmit()
      Returns:
      Whether to show the UI for selecting a binary file to use as the HTTP request body.
    • isShowUseFieldAlias

      public boolean isShowUseFieldAlias()
      Returns:
      Whether to show the UI with the checkbox to use the alias of form fields instead of their names, see also isSendAllFormValues().
    • isTreat4xxAsNormal

      public boolean isTreat4xxAsNormal()
      Returns:
      When true, treats responses with 4xx status codes as normal. When false, throws an error instead (the default behavior).
    • isTreat5xxAsNormal

      public boolean isTreat5xxAsNormal()
      Returns:
      When true, treats responses with 5xx status codes as normal. When false, throws an error instead (the default behavior).
    • isUseBasicAuth

      public boolean isUseBasicAuth()
      Returns:
      Whether to use basic authentication via a username and password.
    • isUseFieldAlias

      public boolean isUseFieldAlias()
      Returns:
      When true, uses the alias of a form element instead of its name.
    • isUseProxy

      public boolean isUseProxy()
      Returns:
      Whether to use a proxy when sending the HTTP request.
    • setAllowInvalidCertificates

      public void setAllowInvalidCertificates(boolean allowInvalidCertificates)
      When connecting via HTTPS, sets whether to allow invalid certificate`s.
      Parameters:
      allowInvalidCertificates - true if invalid certificates are allowed, false otherwise.
    • setAsResponsePage

      public void setAsResponsePage(boolean asResponsePage)
      Parameters:
      asResponsePage - If true, returns the response from the HTTP request as the workflow response. That is, when the user submits a form and the workflow is triggered, send the response back to the user.
    • setAttachToFormRecord

      public void setAttachToFormRecord(boolean attachToFormRecord)
      Parameters:
      attachToFormRecord - Whether files created by the workflow node are attached to the form record.
    • setBasicAuthProps

      public void setBasicAuthProps(FcHttpRequestProps.BasicAuthProps basicAuthProps)
      Parameters:
      basicAuthProps - Basic authentication settings when enabled for the request, see isUseBasicAuth().
    • setConnectTimeout

      public void setConnectTimeout(TimeDuration connectTimeout)
      sets the connection timeout for the HTTP request. The connection timeout is the maximum number of time to wait when attempting to establish a connection to the server.
      Parameters:
      connectTimeout - The connect timeout.
      Since:
      8.1.0
    • setCustomBodyContent

      public void setCustomBodyContent(String customBodyContent)
      Parameters:
      customBodyContent - The custom body content to set
    • setCustomBodyContentType

      public void setCustomBodyContentType(EHttpContentType customBodyContentType)
      Parameters:
      customBodyContentType - The custom body content type to set
    • setCustomLocationResolutionUri

      public void setCustomLocationResolutionUri(String customLocationResolutionUri)
      Parameters:
      customLocationResolutionUri - When the resolution type for the Location header is set to RESOLVE_AGAINST_CUSTOM_URI: the custom URI against which to resolve the URI from the Location header.
    • setDisallowMessageBody

      @Deprecated public void setDisallowMessageBody(boolean disallowMessageBody)
      Parameters:
      disallowMessageBody - When a custom getHttpVerb() is selected, whether a message body is allowed. If no message body is allowed, parameters will be added as URL parameters and no files will be sent.
    • setFilesToTransmit

      public void setFilesToTransmit(MultiFile filesToTransmit)
      Parameters:
      filesToTransmit - Files to transmit with the HTTP request.
    • setForceMultipart

      @Deprecated public void setForceMultipart(boolean forceMultipart)
      Parameters:
      forceMultipart - if the body type should be set to EHttpRequestType.MULTIPART or EHttpRequestType.DYNAMIC
    • setHeaderParameters

      public void setHeaderParameters(List<Setting<String>> headerParameters)
      Parameters:
      headerParameters - Headers to send with the HTTP request. Replaces all headers that were set on this instance.
    • setHttpRequestType

      public void setHttpRequestType(EHttpRequestType httpRequestType)
      Parameters:
      httpRequestType - How the body of the HTTP request should be created.
    • setHttpVerb

      public void setHttpVerb(String httpVerb)
      Parameters:
      httpVerb - The HTTP verb to use for the HTTP request.
    • setInputCharset

      public void setInputCharset(String inputCharset)
      Parameters:
      inputCharset - Input character set, i.e. the encoding used for sending the HTTP request.
    • setLocationResolutionType

      public void setLocationResolutionType(EHttpLocationResolutionType locationResolutionType)
      Parameters:
      locationResolutionType - When the HTTP response has a 3xx status code with a Location header, how to resolve the URI in that header. Defaults to RESOLVE_AGAINST_REQUEST_URI according to RFC 7231.
    • setMultipartHeaderType

      public void setMultipartHeaderType(EMultipartHeaderType multipartHeaderType)
      Parameters:
      multipartHeaderType - How to handle Unicode characters in headers of multipart HTTP requests.
    • setOutputCharset

      public void setOutputCharset(String outputCharset)
      Parameters:
      outputCharset - Output character set, e.g. the expected encoding of the response.
    • setOutputFileName

      public void setOutputFileName(String outputFileName)
      Sets the file name to use for writing the content of the HTTP response to a file. May contain placeholders. When empty, the file name is determined automatically, either from the response headers or from the request URL.
      Parameters:
      outputFileName - The file name of the file with HTTP response.
    • setPostUrl

      public void setPostUrl(String postUrl)
      Parameters:
      postUrl - URL to which to direct the HTTP request.
    • setProxyProps

      public void setProxyProps(FcHttpRequestProps.ProxyProps proxyProps)
      Parameters:
      proxyProps - Proxy settings when a proxy is used for the request, see isUseProxy().
    • setReadTimeout

      public void setReadTimeout(TimeDuration readTimeout)
      sets the read timeout for the HTTP request. The read timeout is the maximum number of time to wait for a response from the server after a connection has been established.
      Parameters:
      readTimeout - The read timeout.
      Since:
      8.1.0
    • setRequestParameters

      public void setRequestParameters(List<Setting<String>> requestParameters)
      Parameters:
      requestParameters - Additional form parameters to send with the HTTP request. Replaces existing parameters set on this instance.
    • setSendAllFormValues

      public void setSendAllFormValues(boolean sendAllFormValues)
      Parameters:
      sendAllFormValues - Whether to send the values of all form fields as form parameters with the HTTP request.
    • setSingleFileToTransmit

      public void setSingleFileToTransmit(SingleFile singleFileToTransmit)
      Parameters:
      singleFileToTransmit - The SingleFile to transmit the body content of
    • setTreat4xxAsNormal

      public void setTreat4xxAsNormal(boolean treat4xxAsNormal)
      Parameters:
      treat4xxAsNormal - When true, treats responses with 4xx status codes as normal. When false, throws an error instead (the default behavior).
    • setTreat5xxAsNormal

      public void setTreat5xxAsNormal(boolean treat5xxAsNormal)
      Parameters:
      treat5xxAsNormal - When true, treats responses with 5xx status codes as normal. When false, throws an error instead (the default behavior).
    • setUseBasicAuth

      public void setUseBasicAuth(boolean useBasicAuth)
      Parameters:
      useBasicAuth - Whether to use basic authentication via a username and password.
    • setUseFieldAlias

      public void setUseFieldAlias(boolean useFieldAlias)
      Parameters:
      useFieldAlias - When true, uses the alias of a form element instead of its name.
    • setUseProxy

      public void setUseProxy(boolean useProxy)
      Parameters:
      useProxy - Whether to use a proxy when sending the HTTP request.
    • setXslTemplate

      public void setXslTemplate(UuidEntityRef xslTemplate)
      Parameters:
      xslTemplate - Optional XSL template for transforming the received response.