Sha256: 2bb840996f04e3de797689546a7984ed7cb3150cafd03e464ada09c8528432cb

Contents?: true

Size: 556 Bytes

Versions: 3

Compression:

Stored size: 556 Bytes

Contents

class ProxyGrantingTicket
  class << self
    def validate!(ticket, store)
      if service_name = store[ticket]
        new(service_name)
      end
    end
  end
  
  def initialize(service_name)
    @service_name = service_name
  end
  
  def valid_for_service?(url)
    @service_name == url
  end
  
  def ticket
    @ticket ||= "PGT-#{rand(100000000000000000)}".to_s
  end
  
  def save!(store)
    store[ticket] = @service_name
  end

  def create_proxy_ticket!(store)
    pt = ProxyTicket.new(@service_name, self)
    pt.save!(store)
    pt
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
classy_cas-0.9.3 lib/proxy_granting_ticket.rb
classy_cas-0.9.2 lib/proxy_granting_ticket.rb
classy_cas-0.9.1 lib/proxy_granting_ticket.rb