Class PutSystemDateInSession

All Implemented Interfaces:
FrankElement, HasApplicationContext, HasName, HasTransactionAttribute, IConfigurable, IForwardTarget, IPipe, IScopeProvider, IWithParameters, NameAware, EventThrowing, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware, org.springframework.context.Lifecycle

@EnterpriseIntegrationPattern(SESSION) public class PutSystemDateInSession extends FixedForwardPipe
Puts the system date/time under a key in the pipeLineSession.
Since:
4.2c
Author:
Johan Verrips, Jaco de Groot (***@dynasol.nl)
  • Field Details

  • Constructor Details

    • PutSystemDateInSession

      public PutSystemDateInSession()
  • Method Details

    • configure

      public void configure() throws ConfigurationException
      Checks whether the proper forward is defined, a dateFormat is specified and the dateFormat is valid.
      Specified by:
      configure in interface IConfigurable
      Overrides:
      configure in class FixedForwardPipe
      Throws:
      ConfigurationException - in case it was not able to configure the component.
    • doPipe

      public PipeRunResult doPipe(Message message, PipeLineSession session) throws PipeRunException
      Description copied from interface: IPipe
      This is where the action takes place. Pipes may only throw a PipeRunException, to be handled by the caller of this object. Implementations must either consume the message, or pass it on to the next Pipe in the PipeRunResult.
      Throws:
      PipeRunException
    • setSessionKey

      public void setSessionKey(String newSessionKey)
      Key of session variable to store systemdate in
      Default value
      systemDate
    • getSessionKey

      public String getSessionKey()
    • setDateFormat

      public void setDateFormat(String rhs)
      Format to store date in
      Default value
      full ISO format: DateUtils.fullIsoFormat
    • getDateFormat

      public String getDateFormat()
    • setTimeZone

      public void setTimeZone(String timeZone)
      Time zone to use for the formatter
      Default value
      the default time zone for the JVM
    • setSleepWhenEqualToPrevious

      public void setSleepWhenEqualToPrevious(long sleepWhenEqualToPrevious)
      Set to a time in milliseconds to create a value that is different to the previous returned value by a PutSystemDateInSession pipe in this virtual machine or -1 to disable. The thread will sleep for the specified time before recalculating a new value. Set the timezone to a value without Daylight Saving Time (like GMT+1) to prevent this pipe to generate two equal value's when the clock is set back. note: When you're looking for a GUID parameter for your XSLT it might be better to use <param name="guid" pattern="{hostname}_{uid}"/>, see Parameter.
      Default value
      -1
    • setReturnFixedDate

      public void setReturnFixedDate(boolean b)
      If true, the date/time returned will always be "2001-12-17 09:30:47" (for testing purposes only). It is overridden by the value of the pipelinesession key stub4testtool.fixeddate when it exists
      Default value
      false
    • isReturnFixedDate

      public boolean isReturnFixedDate()
    • setGetCurrentTimeStampInMillis

      public void setGetCurrentTimeStampInMillis(boolean getCurrentTimeStampInMillis)
      If set to 'true' then current time stamp in millisecond will be stored in the sessionKey
      Default value
      false
    • isGetCurrentTimeStampInMillis

      public boolean isGetCurrentTimeStampInMillis()