Module: CASino::ProcessorConcern::ProxyTickets
Defined Under Namespace
Classes: ValidationResult
Constant Summary
Constants included
from Tickets
Tickets::ALLOWED_TICKET_STRING_CHARACTERS
Instance Method Summary
collapse
Methods included from Tickets
#random_ticket_string
Instance Method Details
#acquire_proxy_ticket(proxy_granting_ticket, service) ⇒ Object
9
10
11
12
13
14
|
# File 'app/processors/casino/processor_concern/proxy_tickets.rb', line 9
def acquire_proxy_ticket(proxy_granting_ticket, service)
proxy_granting_ticket.proxy_tickets.create!({
ticket: random_ticket_string('PT'),
service: service,
})
end
|
#ticket_valid_for_service?(ticket, service, renew = false) ⇒ Boolean
33
34
35
|
# File 'app/processors/casino/processor_concern/proxy_tickets.rb', line 33
def ticket_valid_for_service?(ticket, service, renew = false)
validate_ticket_for_service(ticket, service, renew).success?
end
|
#validate_ticket_for_service(ticket, service, renew = false) ⇒ Object
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# File 'app/processors/casino/processor_concern/proxy_tickets.rb', line 16
def validate_ticket_for_service(ticket, service, renew = false)
if ticket.nil?
result = ValidationResult.new 'INVALID_TICKET', 'Invalid validate request: Ticket does not exist', :warn
else
result = validate_existing_ticket_for_service(ticket, service, renew)
ticket.consumed = true
ticket.save!
Rails.logger.debug "Consumed ticket '#{ticket.ticket}'"
end
if result.success?
Rails.logger.info "Ticket '#{ticket.ticket}' for service '#{service}' successfully validated"
else
Rails.logger.send(result.error_severity, result.error_message)
end
result
end
|