class QuickBlox::UserSession

Attributes

user[RW]

Public Class Methods

destroy_by_token(token) click to toggle source
# File lib/quick_blox/user_session.rb, line 56
def self.destroy_by_token(token)
  RestClient::Request.execute(
      method: :delete,
      url: "#{ QuickBlox.configuration.host }/login.json",
      headers: {
          'Content-Type': 'application/json',
          'QuickBlox-REST-API-Version': QuickBlox.configuration.api_version,
          'QB-Token': token
      }
  ){ |response, request, result|
    case result.code.to_i
      when 200

      else
        response = JSON.parse(response)
        raise QuickBlox::Exceptions::Response, response['errors']
    end
  }
end
new(application_session, options={}) click to toggle source
# File lib/quick_blox/user_session.rb, line 6
def self.new(application_session, options={})

  raise QuickBlox::Exceptions::MissingConfiguration unless QuickBlox.configuration

  RestClient::Request.execute(
      method: :post,
      url: "#{ QuickBlox.configuration.host }/login.json",
      payload: {
          login: options[:login],
          password: options[:password]
      }.to_json,
      headers: {
          'Content-Type': 'application/json',
          'QuickBlox-REST-API-Version': QuickBlox.configuration.api_version,
          'QB-Token': application_session.token
      }
  ){ |response, request, result|
    response = JSON.parse(response)
    case result.code.to_i
      when 200, 201, 202
        user = QuickBlox::User.new
        response['user'].each do |k, v|
          user.instance_variable_set "@#{k}", v
        end
      else
        raise QuickBlox::Exceptions::Response, response['errors']
    end
  }
end

Public Instance Methods

destroy(application_session) click to toggle source
# File lib/quick_blox/user_session.rb, line 36
def destroy(application_session)
  RestClient::Request.execute(
      method: :delete,
      url: "#{ QuickBlox.configuration.host }/login.json",
      headers: {
          'Content-Type': 'application/json',
          'QuickBlox-REST-API-Version': QuickBlox.configuration.api_version,
          'QB-Token': application_session.token
      }
  ){ |response, request, result|
    case result.code.to_i
      when 200

      else
        response = JSON.parse(response)
        raise QuickBlox::Exceptions::Response, response['errors']
    end
  }
end