com.tibbo.aggregate.common.context

## Interface CallerController

- All Known Implementing Classes:
    AbstractCallerController, UncheckedCallerController

      public interface CallerController

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `CallerController.Type`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addLockedContext(Context context)`
    `void` | `cache(java.lang.String path, Context context)`
    `DataTable` | `createLockedContextsTable()`
    `java.lang.String` | `getAddress()`
    `CallerData` | `getCallerData()`
    `default java.lang.String` | `getClientIP()`
    `java.util.Date` | `getCreationTime()`
    `java.lang.String` | `getEffectiveUsername()`
    `java.lang.String` | `getInheritedUsername()`
    `java.lang.String` | `getLogin()`
    `default java.lang.String` | `getLoginType()`
    `PermissionCache` | `getPermissionCache()`
    `Permissions` | `getPermissions()`
    `java.util.Map<java.lang.String,java.lang.Object>` | `getProperties()`
    `java.lang.String` | `getSessionId()`
    `java.lang.Long` | `getSessionIdCounter()`
    `java.lang.Long` | `getTokenExpirationPeriod()`
    `CallerController.Type` | `getType()`
    `java.lang.String` | `getUsername()`
    `boolean` | `isConnectionTerminatable()`
    `boolean` | `isHeadless()`
    `boolean` | `isLoggedIn()`
    `boolean` | `isPermissionCheckingEnabled()`
    `boolean` | `isWeb()`
    `void` | `login(java.lang.String username, java.lang.String inheritedUsername, Permissions permissons)`
    `void` | `logout()`
    `void` | `logoutSoftly()` Used for logout of the user without closing of the corresponded connections in ClientCallerControllers instances.
    `Context` | `lookup(java.lang.String path)`
    `void` | `removeLockedContext(Context context)`
    `void` | `sendFeedback(int level, java.lang.String message)`
    `void` | `sendFeedback(int level, java.lang.String message, java.lang.Integer duration)`
    `void` | `unlockAllContexts()`

- - ### Method Detail

    - #### getUsername

          java.lang.String getUsername()

    - #### getInheritedUsername

          java.lang.String getInheritedUsername()

    - #### getEffectiveUsername

          java.lang.String getEffectiveUsername()

    - #### getLogin

          java.lang.String getLogin()

    - #### isPermissionCheckingEnabled

          boolean isPermissionCheckingEnabled()

    - #### getPermissions

          Permissions getPermissions()

    - #### getPermissionCache

          PermissionCache getPermissionCache()

    - #### isLoggedIn

          boolean isLoggedIn()

    - #### login

          void login(java.lang.String username,
                     java.lang.String inheritedUsername,
                     Permissions permissons)
              throws ContextException

      Throws:
        `ContextException`

    - #### logout

          void logout()

    - #### logoutSoftly

          void logoutSoftly()

      Used for logout of the user without closing of the corresponded connections in ClientCallerControllers instances.

    - #### isHeadless

          boolean isHeadless()

    - #### getType

          CallerController.Type getType()

    - #### getAddress

          java.lang.String getAddress()

    - #### getCreationTime

          java.util.Date getCreationTime()

    - #### getCallerData

          CallerData getCallerData()

    - #### getProperties

          java.util.Map<java.lang.String,java.lang.Object> getProperties()

    - #### sendFeedback

          void sendFeedback(int level,
                            java.lang.String message)

    - #### sendFeedback

          void sendFeedback(int level,
                            java.lang.String message,
                            java.lang.Integer duration)

    - #### getSessionIdCounter

          java.lang.Long getSessionIdCounter()

    - #### getSessionId

          java.lang.String getSessionId()

    - #### getTokenExpirationPeriod

          java.lang.Long getTokenExpirationPeriod()

    - #### lookup

          Context lookup(java.lang.String path)

    - #### cache

          void cache(java.lang.String path,
                     Context context)

    - #### addLockedContext

          void addLockedContext(Context context)

    - #### removeLockedContext

          void removeLockedContext(Context context)

    - #### unlockAllContexts

          void unlockAllContexts()

    - #### createLockedContextsTable

          DataTable createLockedContextsTable()

    - #### isWeb

          boolean isWeb()

    - #### isConnectionTerminatable

          boolean isConnectionTerminatable()

    - #### getLoginType

          default java.lang.String getLoginType()

    - #### getClientIP

          default java.lang.String getClientIP()