Viewing file:      OAuthStore.php (6.89 KB)      -rwxr-xr-x Select action/file-type:    (+) |   (+) |   (+) | Code (+) | Session (+) |   (+) | SDB (+) |   (+) |   (+) |   (+) |   (+) |   (+) |
 
<?php /**  * Licensed to the Apache Software Foundation (ASF) under one  * or more contributor license agreements.  See the NOTICE file  * distributed with this work for additional information  * regarding copyright ownership.  The ASF licenses this file  * to you under the Apache License, Version 2.0 (the  * "License"); you may not use this file except in compliance  * with the License.  You may obtain a copy of the License at  *  *     http://www.apache.org/licenses/LICENSE-2.0  *  * Unless required by applicable law or agreed to in writing,  * software distributed under the License is distributed on an  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY  * KIND, either express or implied.  See the License for the  * specific language governing permissions and limitations  * under the License.  */
  interface OAuthStore {
    public function setOAuthConsumerKeyAndSecret($providerKey, $keyAndSecret);
    public function setTokenAndSecret($tokenKey, $tokenInfo);
    /**
    * Retrieve an OAuthAccessor that is ready to sign OAuthMessages for
    * resource access.
    * @param tokenKey a structure uniquely identifying the token: a userId,
    *                 a gadgetId, a moduleId (in case there are more than one
    *                 gadget of the same type on a page), a tokenName (which
    *                 distinguishes this token from others that the same gadget
    *                 might hold for the same service provider) and a serviceName
    *                 (which is the same as the service name in the ProviderKey
    *                 structure).
    * @param provInfo provider information. The store combines information stored
    *                 in the store (consumer key/secret, token, token secret,
    *                 etc.) with the provider information (access URL, request
    *                 URL etc.) passed in here to create an AccessorInfo object.
    *                 If no information can be found in the
    *                 store, it may use default keys that identify the container,
    *                 as opposed to consumer keys and secrets that are specific
    *                 to this gadget.
    * @return an OAuthAccessor object than can be passed to an OAuthMessage.sign
    *         method.
    */   public function getOAuthAccessorTokenKey(TokenKey $tokenKey, ProviderInfo $provInfo);
    public function getOAuthAccessorProviderKey(ProviderKey $providerKey, ProviderInfo $provInfo);
  }
  class OAuthStoreVars {   public static $HttpMethod = array('GET' => 'GET', 'POST' => 'POST');   public static $SignatureType = array('HMAC_SHA1' => 'HMAC_SHA1', 'RSA_SHA1' => 'RSA_SHA1',       'PLAINTEXT' => 'PLAINTEXT');   public static $KeyType = array('HMAC_SYMMETRIC' => 'HMAC_SYMMETRIC', 'RSA_PRIVATE' => 'RSA_PRIVATE');   public static $OAuthParamLocation = array('AUTH_HEADER' => 'auth-header', 'POST_BODY' => 'post-body',       'URI_QUERY' => 'uri-query'); }
  class AccesorInfo {   /**    * @var OAuthAccessor    */   public $accessor;   public $httpMethod;   public $signatureType;   public $paramLocation;
    public function getParamLocation() {     return $this->paramLocation;   }
    public function setParamLocation($paramLocation) {     $this->paramLocation = $paramLocation;   }
    /**    * @return OAuthAccessor    */   public function getAccessor() {     return $this->accessor;   }
    public function setAccessor($accessor) {     $this->accessor = $accessor;   }
    public function getHttpMethod() {     return $this->httpMethod;   }
    public function setHttpMethod($httpMethod) {     $this->httpMethod = $httpMethod;   }
    public function getSignatureType() {     return $this->signatureType;   }
    public function setSignatureType($signatureType) {     $this->signatureType = $signatureType;   } }
  class ConsumerKeyAndSecret {   private $consumerKey;   private $consumerSecret;   private $keyType;
    public function ConsumerKeyAndSecret($key, $secret, $type) {     $this->consumerKey = $key;     $this->consumerSecret = $secret;     $this->keyType = $type;   }
    public function getConsumerKey() {     return $this->consumerKey;   }
    public function getConsumerSecret() {     return $this->consumerSecret;   }
    public function getKeyType() {     return $this->keyType;   } }
  class ProviderKey {   private $gadgetUri;   private $serviceName;
    public function getGadgetUri() {     return $this->gadgetUri;   }
    public function setGadgetUri($gadgetUri) {     $this->gadgetUri = $gadgetUri;   }
    public function getServiceName() {     return $this->serviceName;   }
    public function setServiceName($serviceName) {     $this->serviceName = $serviceName;   } }
  class ProviderInfo {   private $provider;   private $httpMethod;   private $signatureType;   private $paramLocation;
    // this can be null if we have not negotiated a consumer key and secret   // yet with the provider, or if we decided that we want to use a global   // public key   private $keyAndSecret;
    public function getParamLocation() {     return $this->paramLocation;   }
    public function setParamLocation($paramLocation) {     $this->paramLocation = $paramLocation;   }
    public function getKeyAndSecret() {     return $this->keyAndSecret;   }
    public function setKeyAndSecret($keyAndSecret) {     $this->keyAndSecret = $keyAndSecret;   }
    public function getProvider() {     return $this->provider;   }
    public function setProvider(OAuthServiceProvider $provider) {     $this->provider = $provider;   }
    public function getHttpMethod() {     return $this->httpMethod;   }
    public function setHttpMethod($httpMethod) {     $this->httpMethod = $httpMethod;   }
    public function getSignatureType() {     return $this->signatureType;   }
    public function setSignatureType($signatureType) {     $this->signatureType = $signatureType;   } }
  class TokenKey {   private $userId;   private $gadgetUri;   private $moduleId;   private $tokenName;   private $serviceName;
    public function getUserId() {     return $this->userId;   }
    public function setUserId($userId) {     $this->userId = $userId;   }
    public function getGadgetUri() {     return $this->gadgetUri;   }
    public function setGadgetUri($gadgetUri) {     $this->gadgetUri = $gadgetUri;   }
    public function getModuleId() {     return $this->moduleId;   }
    public function setModuleId($moduleId) {     $this->moduleId = $moduleId;   }
    public function getTokenName() {     return $this->tokenName;   }
    public function setTokenName($tokenName) {     $this->tokenName = $tokenName;   }
    public function getServiceName() {     return $this->serviceName;   }
    public function setServiceName($serviceName) {     $this->serviceName = $serviceName;   } }
  class TokenInfo {   private $accessToken;   private $tokenSecret;
    public function __construct($token, $secret) {     $this->accessToken = $token;     $this->tokenSecret = $secret;   }
    public function getAccessToken() {     return $this->accessToken;   }
    public function getTokenSecret() {     return $this->tokenSecret;   } } 
  |