code: protected void login(Activity context, String appId, String[] permissions, boolean sso, boolean read, final AuthProviderListener listener) {
  
  		Session.OpenRequest auth = new Session.OpenRequest(context);
  		
  		if(permissions != null) {
  			auth.setPermissions(Arrays.asList(permissions));
  		}
  		
  		if(sso) {
  			auth.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
  		}
  		else {
  			auth.setLoginBehavior(SessionLoginBehavior.SUPPRESS_SSO);
  		}
  	
  		auth.setCallback(createLoginCallback(listener));
  		
  		Session session = createNewSession(context, appId);
  		Session.setActiveSession(session);
  		
  		if(read) {
  			openSessionForRead(session ,auth);
  		}
  		else {
  			openSessionForPublish(session ,auth);
  		}
  	}
docs: Protected so we can mock