class PactBroker::Api::Resources::BranchVersions
Public Instance Methods
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 17 def allowed_methods ["GET", "OPTIONS"] end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 45 def branch @branch ||= branch_service.find_branch(**identifier_from_path.slice(:pacticipant_name, :branch_name)) end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 13 def content_types_provided [["application/hal+json", :to_json]] end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 37 def deployed_versions @deployed_versions ||= deployed_version_service.find_deployed_versions_for_versions(versions) end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 21 def malformed_request? super || request.get? && validation_errors_for_schema?(schema, request.query) end
Calls superclass method
PactBroker::Api::Resources::BaseResource#malformed_request?
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 41 def policy_name :'versions::versions' end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 25 def resource_exists? !!branch end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 49 def resource_title "Versions for branch #{branch.name} of #{branch.pacticipant.name}" end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 29 def to_json decorator_class(:versions_decorator).new(versions).to_json(**decorator_options(identifier_from_path.merge(resource_title: resource_title, deployed_versions: deployed_versions))) end
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 33 def versions @versions ||= version_service.find_pacticipant_versions_in_reverse_order(pacticipant_name, { branch_name: identifier_from_path[:branch_name] }, pagination_options, decorator_class(:versions_decorator).eager_load_associations) end
Private Instance Methods
Source
# File lib/pact_broker/api/resources/branch_versions.rb, line 55 def schema if request.get? PactBroker::Api::Contracts::PaginationQueryParamsSchema end end