public static function ConfigureFromPassedArray(array $settings)
    {
        ServiceContext::checkIfOAuthIsValid($settings);

        if(strcasecmp($settings['auth_mode'], CoreConstants::OAUTH1) == 0) {
             $OAuthConfig = new OAuthRequestValidator(
               $settings['accessTokenKey'],
               $settings['accessTokenSecret'],
               $settings['consumerKey'],
               $settings['consumerSecret']
             );
        }else{
             $OAuthConfig = new OAuth2AccessToken(
               $settings['ClientID'],
               $settings['ClientSecret'],
               CoreConstants::getAccessTokenFromArray($settings),
               CoreConstants::getRefreshTokenFromArray($settings)
             );
        }
        $QBORealmID = array_key_exists('QBORealmID', $settings) ? $settings['QBORealmID'] : null;
        $baseURL =    array_key_exists('baseUrl', $settings) ? $settings['baseUrl']: null;
        if(strcasecmp($baseURL, CoreConstants::DEVELOPMENT_SANDBOX) == 0){
           $baseURL = CoreConstants::SANDBOX_DEVELOPMENT;
        }else if(strcasecmp($baseURL, CoreConstants::PRODUCTION_QBO) == 0){
           $baseURL = CoreConstants::QBO_BASEURL;
        }
        $checkedBaseURL = ServiceContext::checkAndAddBaseURLSlash($baseURL);

        if($OAuthConfig instanceof OAuth2AccessToken){
           $OAuthConfig->setRealmID($QBORealmID);
           $OAuthConfig->setBaseURL($checkedBaseURL);
        }
        $serviceType = CoreConstants::IntuitServicesTypeQBO;
        $IppConfiguration = LocalConfigReader::ReadConfigurationFromParameters($OAuthConfig, $checkedBaseURL, CoreConstants::DEFAULT_LOGGINGLOCATION, CoreConstants::DEFAULT_SDK_MINOR_VERSION);
        $serviceContextInstance = new ServiceContext($QBORealmID, $serviceType, $OAuthConfig, $IppConfiguration);
        return $serviceContextInstance;
    }
public static function ConfigureFromPassedArray(array $settings)
    {
        ServiceContext::checkIfOAuthIsValid($settings);

        if(strcasecmp($settings['auth_mode'], CoreConstants::OAUTH1) == 0) {
             $OAuthConfig = new OAuthRequestValidator(
               $settings['accessTokenKey'],
               $settings['accessTokenSecret'],
               $settings['consumerKey'],
               $settings['consumerSecret']
             );
        }else{
             $OAuthConfig = new OAuth2AccessToken(
               $settings['ClientID'],
               $settings['ClientSecret'],
               CoreConstants::getAccessTokenFromArray($settings),
               CoreConstants::getRefreshTokenFromArray($settings)
             );
        }
        $QBORealmID = array_key_exists('QBORealmID', $settings) ? $settings['QBORealmID'] : null;
        $baseURL =    array_key_exists('baseUrl', $settings) ? $settings['baseUrl']: null;
        if(strcasecmp($baseURL, CoreConstants::DEVELOPMENT_SANDBOX) == 0){
           $baseURL = CoreConstants::SANDBOX_DEVELOPMENT;
        }else if(strcasecmp($baseURL, CoreConstants::PRODUCTION_QBO) == 0){
           $baseURL = CoreConstants::QBO_BASEURL;
        }
        $checkedBaseURL = ServiceContext::checkAndAddBaseURLSlash($baseURL);

        if($OAuthConfig instanceof OAuth2AccessToken){
           $OAuthConfig->setRealmID($QBORealmID);
           $OAuthConfig->setBaseURL($checkedBaseURL);
        }
        $serviceType = CoreConstants::IntuitServicesTypeQBO;
        $IppConfiguration = LocalConfigReader::ReadConfigurationFromParameters($OAuthConfig, $checkedBaseURL, CoreConstants::DEFAULT_LOGGINGLOCATION, CoreConstants::DEFAULT_SDK_MINOR_VERSION);
        $serviceContextInstance = new ServiceContext($QBORealmID, $serviceType, $OAuthConfig, $IppConfiguration);
        return $serviceContextInstance;
    }
public static function ConfigureFromPassedArray ( array $ settings ) { ServiceContext :: checkIfOAuthIsValid ( $ settings ) ; if ( strcasecmp ( $ settings [ 'auth_mode' ] , CoreConstants :: OAUTH1 ) == 0 ) { $ OAuthConfig = new OAuthRequestValidator ( $ settings [ 'accessTokenKey' ] , $ settings [ 'accessTokenSecret' ] , $ settings [ 'consumerKey' ] , $ settings [ 'consumerSecret' ] ) ; } else { $ OAuthConfig = new OAuth2AccessToken ( $ settings [ 'ClientID' ] , $ settings [ 'ClientSecret' ] , CoreConstants :: getAccessTokenFromArray ( $ settings ) , CoreConstants :: getRefreshTokenFromArray ( $ settings ) ) ; } $ QBORealmID = array_key_exists ( 'QBORealmID' , $ settings ) ? $ settings [ 'QBORealmID' ] : null ; $ baseURL = array_key_exists ( 'baseUrl' , $ settings ) ? $ settings [ 'baseUrl' ] : null ; if ( strcasecmp ( $ baseURL , CoreConstants :: DEVELOPMENT_SANDBOX ) == 0 ) { $ baseURL = CoreConstants :: SANDBOX_DEVELOPMENT ; } else if ( strcasecmp ( $ baseURL , CoreConstants :: PRODUCTION_QBO ) == 0 ) { $ baseURL = CoreConstants :: QBO_BASEURL ; } $ checkedBaseURL = ServiceContext :: checkAndAddBaseURLSlash ( $ baseURL ) ; if ( $ OAuthConfig instanceof OAuth2AccessToken ) { $ OAuthConfig -> setRealmID ( $ QBORealmID ) ; $ OAuthConfig -> setBaseURL ( $ checkedBaseURL ) ; } $ serviceType = CoreConstants :: IntuitServicesTypeQBO ; $ IppConfiguration = LocalConfigReader :: ReadConfigurationFromParameters ( $ OAuthConfig , $ checkedBaseURL , CoreConstants :: DEFAULT_LOGGINGLOCATION , CoreConstants :: DEFAULT_SDK_MINOR_VERSION ) ; $ serviceContextInstance = new ServiceContext ( $ QBORealmID , $ serviceType , $ OAuthConfig , $ IppConfiguration ) ; return $ serviceContextInstance ; }
Configure the OAuth 1 or OAuth 2 values from a passed array
@param Array $settings    The array that contains OAuth 1 or OAuth 2 settings
Configure the OAuth 1 or OAuth 2 values from a passed array