%3 ::xo::db::CrItem ::xo::db::CrItem changed_redirect_url current_user_id delete fix_content initialize_loaded_object is_cached_object is_package_root_folder privilege=creator rename save save_new set_live_revision update update_attribute_from_slot update_content update_item_index update_revision www-revisions ::xo::db::Object ::xo::db::Object ::xo::db::CrItem->::xo::db::Object ::xo::db::CrCache::Item ::xo::db::CrCache::Item ::xo::db::CrItem->::xo::db::CrCache::Item instmixin ::xo::oauth::Credentials ::xo::oauth::Credentials as_encoded_string update ::xo::oauth::Credentials->::xo::db::CrItem ::xo::oauth::TokenCredentials ::xo::oauth::TokenCredentials ::xo::oauth::TokenCredentials->::xo::oauth::Credentials ::xo::oauth::ClientCredentials ::xo::oauth::ClientCredentials ::xo::oauth::ClientCredentials->::xo::oauth::Credentials ::xo::oauth::TempCredentials ::xo::oauth::TempCredentials update ::xo::oauth::TempCredentials->::xo::oauth::Credentials

Class ::xo::oauth::Credentials

::xo::oauth::Credentials[i] create ...

All credentials are unique only between a client-server pair, which is the reason to store the client and server id at this level.
See Also:
http://tools.ietf.org/html/rfc5849#section-1.1
Defined in packages/xooauth/tcl/oauth-procs.tcl

Class Relations

  • class: ::xo::db::CrClass[i]
  • superclass: ::xo::db::CrItem[i]
  • subclass: ::xo::oauth::TokenCredentials[i], ::xo::oauth::ClientCredentials[i], ::xo::oauth::TempCredentials[i]
::xo::db::CrClass create ::xo::oauth::Credentials \
     -superclass ::xo::db::CrItem

Methods (to be applied on instances)

  • as_encoded_string (scripted)

    set oauth_token [::xo::oauth::utility urlencode ${:identifier}]
    set oauth_token_secret [::xo::oauth::utility urlencode ${:secret}]
    return "oauth_token=${oauth_token}&oauth_token_secret=${oauth_token_secret}"
  • client_metadata_id (setter)

  • credentials_id (setter)

  • identifier (setter)

  • mime_type (setter)

  • secret (setter)

  • server_metadata_id (setter)

  • update (scripted)

    ::xo::dc transaction {
      next
      :instvar object_id secret identifier client_metadata_id server_metadata_id
      ::xo::dc dml update_xooauth_credentials {update xooauth_credentials
        set secret = :secret,identifier = :identifier,client_metadata_id = :client_metadata_id,server_metadata_id = :server_metadata_id where credentials_id = :object_id
      }
    }