Class 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      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
    • Field Detail

      • Token

        public static String Token
    • Constructor Detail

      • SignInManager

        public SignInManager()
      • SignInManager

        public SignInManager​(APISession apiSession)
        SignInManager constructor
        Parameters:
        apiSession -
    • Method Detail

      • 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
      • 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