Interface IFramework

All Known Subinterfaces:
IShuttableFramework
All Known Implementing Classes:
Framework

public interface IFramework

IFramework provides access to the services the Framework specifically controls, although will be provided by other OSGi bundles. Examples being the Configuration Properties Store service, authentication services etc.

Access to the IFramework object will be via the initialisation methods of the services and managers

There must only be 1 provider of the IFramework service and the Framework bundle will always be started before any other Galasa bundle.

  • Method Details

    • setFrameworkProperties

      void setFrameworkProperties(Properties overrideProperties)
    • isInitialised

      boolean isInitialised()
    • getConfigurationPropertyService

      @NotNull @NotNull IConfigurationPropertyStoreService getConfigurationPropertyService(@NotNull @NotNull String namespace) throws ConfigurationPropertyStoreException

      Retrieve the Configuration Property Store service from the framework. This will allow you to access the configuration properties.

      The namespace is used to departmentalise the configuration properties to prevent managers from directly accessing another manager's properties.

      the namespace can be alphanumeric, but no '.', cannot be an empty string and cannot be null

      As an example, the zOS Batch Manager would have a namespace of 'zosbatch'. The zOS Manager with be 'zos'.

      Parameters:
      namespace - - The string used to identify the manager/service to the configuration store
      Returns:
      A IConfigurationPropertyStore, cannot be null
      Throws:
      ConfigurationPropertyStoreException - - If an invalid namespace is given
    • getDynamicStatusStoreService

      @NotNull @NotNull IDynamicStatusStoreService getDynamicStatusStoreService(@NotNull @NotNull String namespace) throws DynamicStatusStoreException

      Retrieve the Dynamic Status Store service from the framework. This will allow you to access the dynamic status store.

      The namespace is used to departmentalise the status properties to prevent managers from directly accessing another manager's properties.

      the namespace can be alphanumeric, but no '.', cannot be an empty string and cannot be null

      As an example, the zOS Batch Manager would have a namespace of 'zosbatch'. The zOS Manager with be 'zos'.

      Parameters:
      namespace - - The string used to identify the manager/service to the dynamic status store
      Returns:
      The dynamic status store service for the specified namespace
      Throws:
      DynamicStatusStoreException
    • getCertificateStoreService

      @NotNull @NotNull ICertificateStoreService getCertificateStoreService()

      Retrieve the Certificate Store Service which can be used to retrieve keystores of certificates or individual certificates from the store.

      Returns:
      A ICertificateStoreService, cannot be null
    • getResultArchiveStore

      @NotNull @NotNull IResultArchiveStore getResultArchiveStore()

      Retrieve the Result Archive Store from the framework.

      Returns:
      A IResultArchiveStore, cannot be null
    • getAuthStore

      @NotNull @NotNull IAuthStore getAuthStore()

      Retrieve the Auth Store from the framework.

      Returns:
      An IAuthStore, cannot be null
    • getAuthStoreService

      @NotNull @NotNull IAuthStoreService getAuthStoreService()
      Retrieve the Auth Store Service which can be used to retrieve users and tokens from the store.
      Returns:
      An IAuthStoreService, cannot be null
    • getResourcePoolingService

      @NotNull @NotNull IResourcePoolingService getResourcePoolingService()

      Provide access to the Resource Pooling Service

      Returns:
      IResourcePoolingService The Resource Pooling Service
    • getConfidentialTextService

      @NotNull @NotNull IConfidentialTextService getConfidentialTextService()

      Provide access to the Confidential Text Service

      Returns:
      The Confidential Text Service
    • getEventsService

      @NotNull @NotNull IEventsService getEventsService()
    • getCredentialsService

      @NotNull @NotNull ICredentialsService getCredentialsService() throws CredentialsException
      Throws:
      CredentialsException
    • getTestRunName

      String getTestRunName()
      Retrieve the test run name. Will be null for non test runs
      Returns:
      - The test run name, null if not a test run
    • getRandom

      Random getRandom()
      Get a predefined Random object for sharing across all managers and servers
      Returns:
      a random object
    • getFrameworkRuns

      IFrameworkRuns getFrameworkRuns() throws FrameworkException
      Throws:
      FrameworkException
    • getTestRun

      IRun getTestRun()
    • getRecordProperties

      Properties getRecordProperties()
    • getApiUrl

      URL getApiUrl(@NotNull @NotNull Api api) throws FrameworkException
      Throws:
      FrameworkException
    • getSharedEnvironmentRunType

      If this is a shared environment run, return the run type
      Returns:
      returns the shared environment run type, or null if it is not
      Throws:
      ConfigurationPropertyStoreException - if there is a problem accessing the CPS