Sha256: f53e59296ed2003a445d4f59d16810137955892b286f778e4115a09b676727c0

Contents?: true

Size: 1.11 KB

Versions: 4

Compression:

Stored size: 1.11 KB

Contents

module DeployGate
  module API
    module V1
      class Session
        ENDPOINT = '/sessions'

        class << self

          # @param [String] name
          # @param [String] token
          # @return [Boolean]
          def check(name, token)
            res = Base.new(token).get(ENDPOINT + '/user', {})
            return false if res['error']

            name == res['results']['name']
          end

          # @param [String] email
          # @param [String] password
          # @return [Hash]
          def login(email, password)
            res = Base.new().post(ENDPOINT, {:email => email, :password => password})

            login_results = {
                :error => res['error'],
                :message => res['because']
            }

            results = res['results']
            unless results.nil?
              login_results.merge!({
                                       :name => results['name'],
                                       :token => results['api_token']
                                   })
            end

            login_results
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
deploygate-0.0.4 lib/deploygate/api/v1/session.rb
deploygate-0.0.3 lib/deploygate/api/v1/session.rb
deploygate-0.0.2 lib/deploygate/api/v1/session.rb
deploygate-0.0.1 lib/deploygate/api/v1/session.rb