Interface LicenceManager

All Superinterfaces:
ADEPT2Service

public interface LicenceManager extends ADEPT2Service
The licence manager provides the licence information for all services and clients of the corresponding server. Additionally, it validates the licence. It is a service started very early in the bootstrapping process.
Services checking for violations can log them. However, not every violation stops the corresponding service. Violations will be checked every day, which may lead to a shutdown of the system.

The licence information is retrieved from an external source when starting this licence manager.

  • Field Details

    • TRANSACTION_TRACKING_DAYS

      static final int TRANSACTION_TRACKING_DAYS
      The amount of days transactions are tracked.
      See Also:
    • MAXIMUM_ALLOWED_TIME_ADJUSTMENT

      static final Duration MAXIMUM_ALLOWED_TIME_ADJUSTMENT
      The amount of time the system clock may be adjusted backwards without being logged as violation.
    • VIOLATION_KNOWN_USER_LIMIT_START

      static final String VIOLATION_KNOWN_USER_LIMIT_START
      The event indicating that the violation of the known user limit has been started.
      See Also:
    • VIOLATION_KNOWN_USER_LIMIT_END

      static final String VIOLATION_KNOWN_USER_LIMIT_END
      The event indicating that the violation of the known user limit has been ended (or has not started yet).
      See Also:
    • VIOLATION_USING_USER_LIMIT_START

      static final String VIOLATION_USING_USER_LIMIT_START
      The event indicating that the violation of the using user limit has been started.
      See Also:
    • VIOLATION_USING_USER_LIMIT_END

      static final String VIOLATION_USING_USER_LIMIT_END
      The event indicating that the violation of the using user limit has been ended.
      See Also:
    • VIOLATION_TRANSACTION_LIMIT

      static final String VIOLATION_TRANSACTION_LIMIT
      The event indicating that the transaction limit has been violated.
      See Also:
    • VIOLATION_TIME_INCONSISTENCY

      static final String VIOLATION_TIME_INCONSISTENCY
      The event indicating that a time inconsistency has occurred.
      See Also:
  • Method Details

    • getSymbolicReleaseName

      String getSymbolicReleaseName()
      Gets the symbolic name of the current release of the server and all of its services as well as the clients.
      Returns:
      The symbolic name of the current release of the server and all of its services as well as the clients.
    • getLicenceInformation

      LicenceInformation getLicenceInformation()
      Gets the licence information that applies to the server and all of its services as well as the clients.
      Returns:
      The licence information that applies to the server and all of its services as well as the clients.
    • logViolation

      boolean logViolation(SessionToken session, String violationType, long violationValue)
      Logs violations of the designated type with the designated value, for instance the number of users concurrently logged on. This does not necessarily stop the checking service; this depends on the severity of the violation.
      Parameters:
      session - The session which is used to check for access rights on this method and to retrieve the logging component.
      violationType - The type of the violation to be logged.
      violationValue - A value for the designated violation type for instance the number users concurrently logged on.
      Returns:
      Whether the violation is so severe that the logging service should stop immediately.
    • setViolationShutdown

      void setViolationShutdown(SessionToken session, ADEPT2Service shutdownService)
      Sets the designated service to be the one to be shut down in case of severe licence violations.
      Parameters:
      session - The session which is used to check for access rights on this method and to retrieve the setting component.
      shutdownService - The service to be shut down as soon as this licence manager detects a severe licence violation.