Class SignInManager

java.lang.Object
android.content.Context
android.content.ContextWrapper
android.view.ContextThemeWrapper
android.app.Activity
android.support.v4.app.FragmentActivity
android.support.v7.app.AppCompatActivity
com.blackberry.workspaces.sdk.api.SignInManager
All Implemented Interfaces:
android.content.ComponentCallbacks, android.content.ComponentCallbacks2, android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback, android.support.v4.app.ActivityCompatApi23.RequestPermissionsRequestCodeValidator, android.support.v4.app.TaskStackBuilder.SupportParentable, android.support.v7.app.ActionBarDrawerToggle.DelegateProvider, android.support.v7.app.AppCompatCallback, android.view.KeyEvent.Callback, android.view.LayoutInflater.Factory, android.view.LayoutInflater.Factory2, android.view.View.OnCreateContextMenuListener, android.view.Window.Callback, Serializable

public class SignInManager
extends android.support.v7.app.AppCompatActivity
implements Serializable
SignInManager
See Also:
Serialized Form
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static String Token  

    Fields inherited from class android.app.Activity

    DEFAULT_KEYS_DIALER, DEFAULT_KEYS_DISABLE, DEFAULT_KEYS_SEARCH_GLOBAL, DEFAULT_KEYS_SEARCH_LOCAL, DEFAULT_KEYS_SHORTCUT, RESULT_CANCELED, RESULT_FIRST_USER, RESULT_OK

    Fields inherited from class android.content.Context

    ACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE, ALARM_SERVICE, APP_OPS_SERVICE, APPWIDGET_SERVICE, AUDIO_SERVICE, BATTERY_SERVICE, BIND_ABOVE_CLIENT, BIND_ADJUST_WITH_ACTIVITY, BIND_ALLOW_OOM_MANAGEMENT, BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, BIND_IMPORTANT, BIND_NOT_FOREGROUND, BIND_WAIVE_PRIORITY, BLUETOOTH_SERVICE, CAMERA_SERVICE, CAPTIONING_SERVICE, CLIPBOARD_SERVICE, CONNECTIVITY_SERVICE, CONSUMER_IR_SERVICE, CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE, CONTEXT_RESTRICTED, DEVICE_POLICY_SERVICE, DISPLAY_SERVICE, DOWNLOAD_SERVICE, DROPBOX_SERVICE, INPUT_METHOD_SERVICE, INPUT_SERVICE, JOB_SCHEDULER_SERVICE, KEYGUARD_SERVICE, LAUNCHER_APPS_SERVICE, LAYOUT_INFLATER_SERVICE, LOCATION_SERVICE, MEDIA_PROJECTION_SERVICE, MEDIA_ROUTER_SERVICE, MEDIA_SESSION_SERVICE, MODE_APPEND, MODE_ENABLE_WRITE_AHEAD_LOGGING, MODE_MULTI_PROCESS, MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE, NFC_SERVICE, NOTIFICATION_SERVICE, NSD_SERVICE, POWER_SERVICE, PRINT_SERVICE, RESTRICTIONS_SERVICE, SEARCH_SERVICE, SENSOR_SERVICE, STORAGE_SERVICE, TELECOM_SERVICE, TELEPHONY_SERVICE, TEXT_SERVICES_MANAGER_SERVICE, TV_INPUT_SERVICE, UI_MODE_SERVICE, USB_SERVICE, USER_SERVICE, VIBRATOR_SERVICE, WALLPAPER_SERVICE, WIFI_P2P_SERVICE, WIFI_SERVICE, WINDOW_SERVICE

    Fields inherited from interface android.content.ComponentCallbacks2

    TRIM_MEMORY_BACKGROUND, TRIM_MEMORY_COMPLETE, TRIM_MEMORY_MODERATE, TRIM_MEMORY_RUNNING_CRITICAL, TRIM_MEMORY_RUNNING_LOW, TRIM_MEMORY_RUNNING_MODERATE, TRIM_MEMORY_UI_HIDDEN
  • Constructor Summary

    Constructors 
    Constructor Description
    SignInManager()  
    SignInManager​(APISession apiSession)
    SignInManager constructor
  • Method Summary

    Modifier and Type Method Description
    String accessUri()
    accessUri
    String authUri()
    authUri
    int ExpiresInMinutes()
    ExpiresInMinutes
    int expiryTimeInSeconds()
    expiryTimeInSeconds
    String getAutoSignInEmail()
    getAutoSignInEmail
    String getEncryptionAlgorithm()
    getEncryptionAlgorithm
    String getOAuthAccessToken​(String accessRequestUri, String email, String refreshToken)
    getOAuthAccessToken
    PrivateKey getPrivateKey()
    getPrivateKey
    String getRefreshToken()
    getRefreshToken
    org.apache.maven.artifact.versioning.DefaultArtifactVersion getServerVersion()
    getServerVersion
    String getServiceAccountToken​(String userEmail, String issuer, int expiresInMinutes, PrivateKey privateKey, String encryptionAlgorithm)
    getServiceAccountToken A helper method for formulating an authorization token when using Service Accounts for user authentication.
    Enums.SignInType getSignInMethods​(String email)
    getSignInMethods gets the SignInMethods the server supports.
    String[] getSupportedFileTypes()
    getSupportedFileTypes
    String getUserFullName()
    getUserFullName
    ItemListJson<WorkspaceInfoJson> getUserRooms()
    returns the list of VDRs the user is permitted to
    String[] getVerifiedEmails()
    getVerifiedEmails
    List<AvailableUserInfoJson> getVerifiedUsers()
    getVerifiedUsers gets the verified users on this machine against the server in the connection
    boolean isAdminInRoom​(String roomID)
    isAdminInRoom
    boolean isAutoSignInOn()
    IsAutoSignInOn
    boolean isEmailVerified​(String email)
    IsEmailVerified
    boolean isOAuth()
    isOAuth
    boolean isServiceAccount()
    isServiceAccount Determines if the signing type is Service Account or not
    String Issuer()
    Issuer
    Enums.LoginResult lastLoginResult()
    lastLoginResult returns the last login result from password authentication attempt
    Date lastUserPlansRefreshTime()
    lastUserPlansRefreshTime
    void loadServiceAccountSession​(String userEmail, String issuer, int expiresInMinutes, PrivateKey privateKey, String encryptionAlgorithm)
    LoadServiceAccountSession
    String logoffUri()
    logoffUri
    String MultimodeUri()
    MultimodeUri
    android.view.View onCreateView​(android.view.View arg0, String arg1, android.content.Context arg2, android.util.AttributeSet arg3)  
    android.view.View onCreateView​(String arg0, android.content.Context arg1, android.util.AttributeSet arg2)  
    void setRefreshToken​(String m_RefreshToken)
    setRefreshToken
    void setUserRooms​(ItemListJson<WorkspaceInfoJson> m_UserRooms)
    setUserRooms
    String signInWithOAuth​(android.app.Activity activity, String email, String refreshToken, boolean showUiIfRefreshFails)
    Authenticate with OAuth identity provider.
    String signInWithServiceAccount​(String userEmail, String issuer, int expiresInMinutes, PrivateKey privateKey, String encryptionAlgorithm)
    SignInWithServiceAccount
    Enums.SignInType supportedMethod()
    supportedMethod
    User userInfo()
    userInfo

    Methods inherited from class android.support.v7.app.AppCompatActivity

    addContentView, dispatchKeyEvent, findViewById, getDelegate, getDrawerToggleDelegate, getMenuInflater, getResources, getSupportActionBar, getSupportParentActivityIntent, invalidateOptionsMenu, onConfigurationChanged, onContentChanged, onCreateSupportNavigateUpTaskStack, onMenuItemSelected, onMenuOpened, onPanelClosed, onPrepareSupportNavigateUpTaskStack, onSupportActionModeFinished, onSupportActionModeStarted, onSupportContentChanged, onSupportNavigateUp, onWindowStartingSupportActionMode, setContentView, setContentView, setContentView, setSupportActionBar, setSupportProgress, setSupportProgressBarIndeterminate, setSupportProgressBarIndeterminateVisibility, setSupportProgressBarVisibility, setTheme, startSupportActionMode, supportInvalidateOptionsMenu, supportNavigateUpTo, supportRequestWindowFeature, supportShouldUpRecreateTask

    Methods inherited from class android.support.v4.app.FragmentActivity

    dump, getLastCustomNonConfigurationInstance, getSupportFragmentManager, getSupportLoaderManager, onAttachFragment, onBackPressed, onCreatePanelMenu, onKeyDown, onLowMemory, onPreparePanel, onRequestPermissionsResult, onRetainCustomNonConfigurationInstance, onRetainNonConfigurationInstance, onStateNotSaved, setEnterSharedElementCallback, setExitSharedElementCallback, startActivityForResult, startActivityFromFragment, supportFinishAfterTransition, supportPostponeEnterTransition, supportStartPostponedEnterTransition, validateRequestPermissionsRequestCode

    Methods inherited from class android.app.Activity

    closeContextMenu, closeOptionsMenu, createPendingResult, dismissDialog, dispatchGenericMotionEvent, dispatchKeyShortcutEvent, dispatchPopulateAccessibilityEvent, dispatchTouchEvent, dispatchTrackballEvent, finish, finishActivity, finishActivityFromChild, finishAffinity, finishAfterTransition, finishAndRemoveTask, finishFromChild, getActionBar, getApplication, getCallingActivity, getCallingPackage, getChangingConfigurations, getComponentName, getContentScene, getContentTransitionManager, getCurrentFocus, getFragmentManager, getIntent, getLastNonConfigurationInstance, getLayoutInflater, getLoaderManager, getLocalClassName, getMediaController, getParent, getParentActivityIntent, getPreferences, getRequestedOrientation, getSystemService, getTaskId, getTitle, getTitleColor, getVolumeControlStream, getWindow, getWindowManager, hasWindowFocus, isChangingConfigurations, isChild, isDestroyed, isFinishing, isImmersive, isTaskRoot, managedQuery, moveTaskToBack, navigateUpTo, navigateUpToFromChild, onActionModeFinished, onActionModeStarted, onActivityReenter, onAttachedToWindow, onAttachFragment, onContextItemSelected, onContextMenuClosed, onCreate, onCreateContextMenu, onCreateDescription, onCreateNavigateUpTaskStack, onCreateOptionsMenu, onCreatePanelView, onCreateThumbnail, onDetachedFromWindow, onEnterAnimationComplete, onGenericMotionEvent, onKeyLongPress, onKeyMultiple, onKeyShortcut, onKeyUp, onNavigateUp, onNavigateUpFromChild, onOptionsItemSelected, onOptionsMenuClosed, onPostCreate, onPrepareNavigateUpTaskStack, onPrepareOptionsMenu, onProvideAssistData, onRestoreInstanceState, onSaveInstanceState, onSearchRequested, onTouchEvent, onTrackballEvent, onTrimMemory, onUserInteraction, onVisibleBehindCanceled, onWindowAttributesChanged, onWindowFocusChanged, onWindowStartingActionMode, openContextMenu, openOptionsMenu, overridePendingTransition, postponeEnterTransition, recreate, registerForContextMenu, releaseInstance, removeDialog, reportFullyDrawn, requestVisibleBehind, requestWindowFeature, runOnUiThread, setActionBar, setContentTransitionManager, setDefaultKeyMode, setEnterSharedElementCallback, setExitSharedElementCallback, setFeatureDrawable, setFeatureDrawableAlpha, setFeatureDrawableResource, setFeatureDrawableUri, setFinishOnTouchOutside, setImmersive, setIntent, setMediaController, setProgress, setProgressBarIndeterminate, setProgressBarIndeterminateVisibility, setProgressBarVisibility, setRequestedOrientation, setResult, setResult, setSecondaryProgress, setTaskDescription, setTitle, setTitle, setTitleColor, setVisible, setVolumeControlStream, shouldUpRecreateTask, showDialog, showDialog, startActionMode, startActivities, startActivities, startActivity, startActivity, startActivityForResult, startActivityFromChild, startActivityFromChild, startActivityFromFragment, startActivityFromFragment, startActivityIfNeeded, startActivityIfNeeded, startIntentSender, startIntentSender, startIntentSenderForResult, startIntentSenderForResult, startIntentSenderFromChild, startIntentSenderFromChild, startLockTask, startManagingCursor, startNextMatchingActivity, startNextMatchingActivity, startPostponedEnterTransition, startSearch, stopLockTask, stopManagingCursor, takeKeyEvents, triggerSearch, unregisterForContextMenu

    Methods inherited from class android.view.ContextThemeWrapper

    applyOverrideConfiguration, getTheme

    Methods inherited from class android.content.ContextWrapper

    bindService, checkCallingOrSelfPermission, checkCallingOrSelfUriPermission, checkCallingPermission, checkCallingUriPermission, checkPermission, checkUriPermission, checkUriPermission, clearWallpaper, createConfigurationContext, createDisplayContext, createPackageContext, databaseList, deleteDatabase, deleteFile, enforceCallingOrSelfPermission, enforceCallingOrSelfUriPermission, enforceCallingPermission, enforceCallingUriPermission, enforcePermission, enforceUriPermission, enforceUriPermission, fileList, getApplicationContext, getApplicationInfo, getAssets, getBaseContext, getCacheDir, getClassLoader, getCodeCacheDir, getContentResolver, getDatabasePath, getDir, getExternalCacheDir, getExternalCacheDirs, getExternalFilesDir, getExternalFilesDirs, getExternalMediaDirs, getFilesDir, getFileStreamPath, getMainLooper, getNoBackupFilesDir, getObbDir, getObbDirs, getPackageCodePath, getPackageManager, getPackageName, getPackageResourcePath, getSharedPreferences, getWallpaper, getWallpaperDesiredMinimumHeight, getWallpaperDesiredMinimumWidth, grantUriPermission, isRestricted, openFileInput, openFileOutput, openOrCreateDatabase, openOrCreateDatabase, peekWallpaper, registerReceiver, registerReceiver, removeStickyBroadcast, removeStickyBroadcastAsUser, revokeUriPermission, sendBroadcast, sendBroadcast, sendBroadcastAsUser, sendBroadcastAsUser, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcastAsUser, sendStickyBroadcast, sendStickyBroadcastAsUser, sendStickyOrderedBroadcast, sendStickyOrderedBroadcastAsUser, setWallpaper, setWallpaper, startInstrumentation, startService, stopService, unbindService, unregisterReceiver

    Methods inherited from class android.content.Context

    getDrawable, getString, getString, getText, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, registerComponentCallbacks, unregisterComponentCallbacks

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

  • Method Details

    • lastLoginResult

      public Enums.LoginResult lastLoginResult()
      lastLoginResult returns the last login result from password authentication attempt
      Returns:
      LoginResult m_LoginResult
    • getUserRooms

      public ItemListJson<WorkspaceInfoJson> getUserRooms()
      returns the list of VDRs the user is permitted to
      Returns:
      ItemListJson of WorkspaceInfoJson m_UserRooms
    • setUserRooms

      public void setUserRooms​(ItemListJson<WorkspaceInfoJson> m_UserRooms)
      setUserRooms
      Parameters:
      m_UserRooms -
    • userInfo

      public User userInfo()
      userInfo
      Returns:
      User m_UserInfo
    • authUri

      public String authUri()
      authUri
      Returns:
      String m_AuthUri
    • accessUri

      public String accessUri()
      accessUri
      Returns:
      String m_AccessUri
    • logoffUri

      public String logoffUri()
      logoffUri
      Returns:
      String m_LogoutUri
    • supportedMethod

      public Enums.SignInType supportedMethod()
      supportedMethod
      Returns:
      SignInType
    • getRefreshToken

      public String getRefreshToken()
      getRefreshToken
      Returns:
      String m_RefreshToken
    • setRefreshToken

      public void setRefreshToken​(String m_RefreshToken)
      setRefreshToken
      Parameters:
      m_RefreshToken -
    • expiryTimeInSeconds

      public int expiryTimeInSeconds()
      expiryTimeInSeconds
      Returns:
      int m_ExpirationTimeInSeconds
    • lastUserPlansRefreshTime

      public Date lastUserPlansRefreshTime()
      lastUserPlansRefreshTime
      Returns:
      Date m_LastUserPlansRefreshTime
    • getServerVersion

      public org.apache.maven.artifact.versioning.DefaultArtifactVersion getServerVersion()
      getServerVersion
      Returns:
      DefaultArtifactVersion m_ServerVersion
    • MultimodeUri

      public String MultimodeUri()
      MultimodeUri
      Returns:
      String m_MultimodeUri
    • Issuer

      public String Issuer()
      Issuer
      Returns:
      String m_Issuer
    • ExpiresInMinutes

      public int ExpiresInMinutes()
      ExpiresInMinutes
      Returns:
      int m_ExpiresInMinutes service account expiration time in minutes
    • getEncryptionAlgorithm

      public String getEncryptionAlgorithm()
      getEncryptionAlgorithm
      Returns:
      String m_encryptionAlgorithm
    • getPrivateKey

      public PrivateKey getPrivateKey()
      getPrivateKey
      Returns:
      PrivateKey m_PrivateKey
    • getUserFullName

      public String getUserFullName()
      getUserFullName
      Returns:
      String m_UserInfo.getFullName()
    • signInWithServiceAccount

      public String signInWithServiceAccount​(String userEmail, String issuer, int expiresInMinutes, PrivateKey privateKey, String encryptionAlgorithm)
      SignInWithServiceAccount
      Parameters:
      userEmail -
      issuer -
      expiresInMinutes -
      privateKey -
      encryptionAlgorithm -
      Returns:
      String ssid SSID if succeeded, empty string otherwise
    • signInWithOAuth

      public String signInWithOAuth​(android.app.Activity activity, String email, String refreshToken, boolean showUiIfRefreshFails)
      Authenticate with OAuth identity provider.
      Parameters:
      email -
      refreshToken -
      showUiIfRefreshFails -
      Returns:
      SSID if succeeded, empty string otherwise
      Throws:
      HttpException
      IOException
    • getOAuthAccessToken

      public String getOAuthAccessToken​(String accessRequestUri, String email, String refreshToken)
      getOAuthAccessToken
      Parameters:
      accessRequestUri -
      email -
      refreshToken -
      Returns:
      access_token
    • loadServiceAccountSession

      public void loadServiceAccountSession​(String userEmail, String issuer, int expiresInMinutes, PrivateKey privateKey, String encryptionAlgorithm)
      LoadServiceAccountSession
      Parameters:
      userEmail -
      issuer -
      expiresInMinutes -
      privateKey -
      encryptionAlgorithm -
    • isAutoSignInOn

      public boolean isAutoSignInOn()
      IsAutoSignInOn
      Returns:
      true if AutoSignIn is possible
    • getAutoSignInEmail

      public String getAutoSignInEmail()
      getAutoSignInEmail
      Returns:
      String saved email used for auto sign in
    • getVerifiedEmails

      public String[] getVerifiedEmails()
      getVerifiedEmails
      Returns:
      String[] array of all the authenticated emails
    • getVerifiedUsers

      public List<AvailableUserInfoJson> getVerifiedUsers()
      getVerifiedUsers gets the verified users on this machine against the server in the connection
      Returns:
      List of AvailableUserInfoJson
    • getSignInMethods

      public Enums.SignInType getSignInMethods​(String email)
      getSignInMethods gets the SignInMethods the server supports.
      Parameters:
      email -
      Returns:
      SignInType
    • isEmailVerified

      public boolean isEmailVerified​(String email)
      IsEmailVerified
      Parameters:
      email -
      Returns:
      true if the given email is authenticated with the server
    • isAdminInRoom

      public boolean isAdminInRoom​(String roomID)
      isAdminInRoom
      Parameters:
      roomID -
      Returns:
      true if the logged in user is authenticated in the given room
    • getSupportedFileTypes

      public String[] getSupportedFileTypes()
      getSupportedFileTypes
      Returns:
      String[] array of supported file types
    • getServiceAccountToken

      public String getServiceAccountToken​(String userEmail, String issuer, int expiresInMinutes, PrivateKey privateKey, String encryptionAlgorithm)
      getServiceAccountToken A helper method for formulating an authorization token when using Service Accounts for user authentication.
      Parameters:
      userEmail -
      issuer -
      expiresInMinutes -
      privateKey -
      encryptionAlgorithm -
      Returns:
      String authToken The authorization token to be used in making API requests
    • isOAuth

      public boolean isOAuth()
      isOAuth
      Returns:
      true if signIn type is OAuth or EmailOverOAuth
    • isServiceAccount

      public boolean isServiceAccount()
      isServiceAccount Determines if the signing type is Service Account or not
      Returns:
      true if the signIn type is Service Account, false otherwise
    • onCreateView

      public android.view.View onCreateView​(android.view.View arg0, String arg1, android.content.Context arg2, android.util.AttributeSet arg3)
      Specified by:
      onCreateView in interface android.view.LayoutInflater.Factory2
      Overrides:
      onCreateView in class android.app.Activity
    • onCreateView

      public android.view.View onCreateView​(String arg0, android.content.Context arg1, android.util.AttributeSet arg2)
      Specified by:
      onCreateView in interface android.view.LayoutInflater.Factory
      Overrides:
      onCreateView in class android.app.Activity