@Override
  public void clearSessionCache(Context context) {
    try {
      if (session != null) {

        UserProviderCredentialsMap userProviderCredentialsMap =
            session.getUserProviderCredentials();

        if (userProviderCredentialsMap != null) {
          Collection<UserProviderCredentials> values = userProviderCredentialsMap.values();
          for (UserProviderCredentials userProviderCredentials : values) {
            AuthProviderInfo authProviderInfo = userProviderCredentials.getAuthProviderInfo();
            if (authProviderInfo != null) {
              clear3rdPartySession(context, authProviderInfo.getType());
            }
          }
        }

        session = null;
      }
    } finally {
      if (userSystem != null) {
        userSystem.clearSession();
      }
    }
  }