Package org.apache.synapse.transport.dynamicconfigurations

# Class DynamicProfileReloader

java.lang.Object
org.apache.synapse.transport.dynamicconfigurations.DynamicProfileReloader

Direct Known Subclasses:
  `ListenerProfileReloader`, `SenderProfileReloader`

public abstract class DynamicProfileReloader extends Object
Abstract class to use as Profile Reloader Subscribers. FileUpdateNotificationHandler will notify this once the event is triggered.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected FileUpdateNotificationHandler`
  `fileUpdateNotificationHandler`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DynamicProfileReloader()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected String`
  `extractConfigurationFilePath(org.apache.axis2.description.ParameterInclude transportOut)`
  Set the configuration file path from custom SSL config
  `protected long`
  `extractSleepInterval(org.apache.axis2.description.ParameterInclude transportOut)`
  Set SSL Profile configuration loading interval from Axis2 config
  `String`
  `getClassName(String completeClassName)`
  Get actual class name from comprehensive class name
  `String`
  `getFilePath()`
  Returns File Path of the dynamic SSL profiles
  `long`
  `getLastUpdatedtime()`
  Returns Last Updated Time of the File
  `boolean`
  `isInvokedFromSchedule()`
  Check whether the file is invoked from scheduled task
  `abstract void`
  `notifyFileUpdate(boolean isScheduled)`
  `protected boolean`
  `registerListener(org.apache.axis2.description.ParameterInclude transportDescription)`
  Register this Profile Loader in FileUpdateNotificationHandler for notifications
  `void`
  `setFilePath(String filePath)`
  Set file path
  `void`
  `setInvokedFromSchedule(boolean invokedFromSchedule)`
  Set whether the file is invoked from schedule
  `void`
  `setLastUpdatedtime(long lastUpdatedtime)`
  Set Last Updated time of the file

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### fileUpdateNotificationHandler

    protected FileUpdateNotificationHandler fileUpdateNotificationHandler

- ## Constructor Details

  - ### DynamicProfileReloader

    public DynamicProfileReloader()

- ## Method Details

  - ### notifyFileUpdate

    public abstract void notifyFileUpdate(boolean isScheduled)

  - ### getLastUpdatedtime

    public long getLastUpdatedtime()
    Returns Last Updated Time of the File
    Returns:
      Long time in milliseconds

  - ### getFilePath

    public String getFilePath()
    Returns File Path of the dynamic SSL profiles
    Returns:
      String file path

  - ### setFilePath

    public void setFilePath(String filePath)
    Set file path
    Parameters:
      `filePath` - String file path

  - ### setLastUpdatedtime

    public void setLastUpdatedtime(long lastUpdatedtime)
    Set Last Updated time of the file
    Parameters:
      `lastUpdatedtime` - Long time in milliseconds

  - ### isInvokedFromSchedule

    public boolean isInvokedFromSchedule()
    Check whether the file is invoked from scheduled task
    Returns:
      true if invoked from schedule, false otherwise

  - ### setInvokedFromSchedule

    public void setInvokedFromSchedule(boolean invokedFromSchedule)
    Set whether the file is invoked from schedule
    Parameters:
      `invokedFromSchedule` - true if invoked from schedule, false otherwise

  - ### extractConfigurationFilePath

    protected String extractConfigurationFilePath(org.apache.axis2.description.ParameterInclude transportOut)
    Set the configuration file path from custom SSL config
    Parameters:
      `transportOut` - TransportOutDescription of the configuration
    Returns:
      File Path String

  - ### extractSleepInterval

    protected long extractSleepInterval(org.apache.axis2.description.ParameterInclude transportOut)
    Set SSL Profile configuration loading interval from Axis2 config
    Parameters:
      `transportOut` - TransportOutDescription of the configuration
    Returns:
      Long value of the interval in milliseconds

  - ### registerListener

    protected boolean registerListener(org.apache.axis2.description.ParameterInclude transportDescription)
    Register this Profile Loader in FileUpdateNotificationHandler for notifications
    Parameters:
      `transportDescription` - Transport In/Out Description of the configuration

  - ### getClassName

    public String getClassName(String completeClassName)
    Get actual class name from comprehensive class name
    Parameters:
      `completeClassName` - complete class name String
    Returns:
      instance name String