Sha256: 63c8c12a96e5f8b2ce0eb8159deb3da3dbc3b063cf516e822981ac3ec24fddc1

Contents?: true

Size: 648 Bytes

Versions: 7

Compression:

Stored size: 648 Bytes

Contents

class Authmgr
  def initialize
    @users = {
      'NaHi' => 'passwd',
      'HiNa' => 'wspass'
    }
    @sessions = {}
  end

  def login(userid, passwd)
    userid and passwd and @users[userid] == passwd
  end

  # returns userid
  def auth(sessionid)
    @sessions[sessionid]
  end

  def create_session(userid)
    while true
      key = create_sessionkey
      break unless @sessions[key]
    end
    @sessions[key] = userid
    key
  end

  def get_session(userid)
    @sessions.index(userid)
  end

  def destroy_session(sessionkey)
    @sessions.delete(sessionkey)
  end

private

  def create_sessionkey
    Time.now.usec.to_s
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
soap4r-spox-1.6.0 sample/soapheader/authheader/authmgr.rb
soap4r-ruby1.9-2.0.5 sample/soapheader/authheader/authmgr.rb
soap4r-ruby1.9-2.0.3 sample/soapheader/authheader/authmgr.rb
soap4r-ruby1.9-2.0.2 sample/soapheader/authheader/authmgr.rb
soap4r-ruby1.9-2.0.1 sample/soapheader/authheader/authmgr.rb
soap4r-ruby1.9-2.0.0 sample/soapheader/authheader/authmgr.rb
soap4r-ruby1.9-1.0.0 sample/soapheader/authheader/authmgr.rb