Interface OsidRuntimeManager

All Superinterfaces:
AutoCloseable, Closeable, OsidManager, OsidManager, OsidProfile, OsidRuntimeProfile, Sourceable

public interface OsidRuntimeManager extends OsidManager, OsidRuntimeProfile

The OsidRuntimeManager represents and OSID platform and contains the information required for running OSID implementations such as search paths and configurations.

The OsidRuntimeManager is defined as an interface to provide flexibility for managing an OSID environment. The instantiation of a OsidRuntimeManager implementation is defined by the OSID platform.

The OsidRuntimeManager should be instantiated with a string that identifies the application or environment current at the time of instantiation. This key is used soley for the purpose of seeding the configuration service as a means to enable lower level OSIDs to tune their configuration in response to this key, or, it can be used by the application to retrieve configuration data for itself.

  • Method Details

    • getManager

      Finds, loads and instantiates providers of OSID managers. Providers must conform to an OsidManager interface. The interfaces are defined in the OSID enumeration. For all OSID requests, an instance of OsidManager that implements the OsidManager interface is returned. In bindings where permitted, this can be safely cast into the requested manager.
      Parameters:
      osid - represents the OSID
      implClassName - the name of the implementation
      version - the minimum required OSID specification version
      Returns:
      the manager of the service
      Throws:
      ConfigurationErrorException - an error in configuring the implementation
      NotFoundException - the implementation class was not found
      NullArgumentException - implClassName or version is null
      OperationFailedException - unable to complete request
      UnsupportedException - implClassName does not support the requested OSID
      Compliance:
      mandatory - This method must be implemented.
      Notes:
      After - finding and instantiating the requested {@code OsidManager} , providers must invoke {@code OsidManager.initialize(OsidRuntimeManager)} where the environment is an instance of the current environment that includes the configuration for the service being initialized. The {@code OsidRuntimeManager} passed may include information useful for the configuration such as the identity of the service being instantiated.
    • getProxyManager

      Finds, loads and instantiates providers of OSID managers. Providers must conform to an OsidManager interface. The interfaces are defined in the OSID enumeration. For all OSID requests, an instance of OsidManager that implements the OsidManager interface is returned. In bindings where permitted, this can be safely cast into the requested manager.
      Parameters:
      osid - represents the OSID
      implementation - the name of the implementation
      version - the minimum required OSID specification version
      Returns:
      the manager of the service
      Throws:
      ConfigurationErrorException - an error in configuring the implementation
      NotFoundException - the implementation class was not found
      NullArgumentException - implementation or version is null
      OperationFailedException - unable to complete request
      UnsupportedException - implementation does not support the requested OSID
      Compliance:
      mandatory - This method must be implemented.
      Notes:
      After - finding and instantiating the requested {@code OsidManager} , providers must invoke {@code OsidManager.initialize(OsidRuntimeManager)} where the environment is an instance of the current environment that includes the configuration for the service being initialized. The {@code OsidRuntimeManager} passed may include information useful for the configuration such as the identity of the service being instantiated.
    • getConfiguration

      Gets the current configuration in the runtime environment.
      Returns:
      a configuration
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - an authorization failure occurred
      UnimplementedException - a configuration service is not supported
      Compliance:
      optional - This method must be implemented if {@code supportsConfiguration()} is {@code true} .