module PactBroker::Api::Resources::BadgeMethods

Public Instance Methods

allowed_methods() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 5
def allowed_methods
  ["GET", "OPTIONS"]
end
badge_url() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 45
def badge_url
  raise NotImplementedError
end
content_types_provided() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 9
def content_types_provided
  [["image/svg+xml", :to_svg]]
end
forbidden?() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 22
def forbidden?
  false
end
is_authorized?(authorization_header) click to toggle source
Calls superclass method
# File lib/pact_broker/api/resources/badge_methods.rb, line 26
def is_authorized?(authorization_header)
  super || PactBroker.configuration.enable_public_badge_access
end
moved_temporarily?() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 34
def moved_temporarily?
  set_cache_control("no-cache")
  begin
    badge_url
  rescue StandardError => e
    # Want to render a badge, even if there's an error
    error_reference = log_and_report_error(e)
    badge_service.error_badge_url("error", "reference: #{error_reference}")
  end
end
policy_name() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 30
def policy_name
  :'badges::badge'
end
previously_existed?() click to toggle source

Only called if resource_exists? returns false

# File lib/pact_broker/api/resources/badge_methods.rb, line 18
def previously_existed?
  true
end
resource_exists?() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 13
def resource_exists?
  false
end
set_cache_control(cache_control_str) click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 49
def set_cache_control(cache_control_str)
  response.headers["Cache-Control"] = cache_control_str
end

Private Instance Methods

label() click to toggle source
# File lib/pact_broker/api/resources/badge_methods.rb, line 55
def label
  lab = request.query["label"]
  lab && !lab.empty? ? lab : nil
end