/**
  * Is a shortcut to {@link #sharedInstance()} and {@link #_login()}.
  *
  * @return Returns the shared instance after login was performed.
  * @throws LoginException If the login fails (usually the login will retry until the user cancels,
  *     but then, a WorkOfflineException or sth. similar will be thrown)
  */
 public static Login login() throws LoginException {
   Login login = sharedInstance();
   login._login();
   return login;
 }
 /**
  * Is a shortcut to {@link #sharedInstance()} and {@link #_logout()}.
  *
  * @return Returns the shared instance after logout was performed.
  */
 public static Login logout() {
   Login login = sharedInstance();
   login._logout();
   return login;
 }
 @Override
 public synchronized Login makeInstance() {
   Login login = new Login();
   login.process();
   return login;
 }