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

    All Methods Instance Methods Abstract Methods Concrete Methods
    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 Detail

    - #### fileUpdateNotificationHandler

          protected FileUpdateNotificationHandler fileUpdateNotificationHandler

  - ### Constructor Detail

    - #### DynamicProfileReloader

          public DynamicProfileReloader()

  - ### Method Detail

    - #### 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