class PactBroker::Api::Resources::Pacticipants
Public Instance Methods
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 23 def allowed_methods ["GET", "POST", "OPTIONS"] end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 19 def content_types_accepted [["application/json", :from_json]] end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 15 def content_types_provided [["application/hal+json", :to_json]] end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 52 def create_path "/pacticpants/#{url_encode(params[:name])}" end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 64 def decorator_for model decorator_class(:pacticipant_decorator).new(model) end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 47 def from_json created_model = pacticipant_service.create(parsed_pacticipant.to_h) response.body = decorator_for(created_model).to_json(**decorator_options) end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 60 def generate_json pacticipants decorator_class(:deprecated_pacticipants_decorator).new(pacticipants).to_json(**decorator_options) end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 27 def malformed_request? if super true elsif request.post? && validation_errors_for_schema? true elsif request.get? && validation_errors_for_schema?(schema, request.query) true else false end end
Calls superclass method
PactBroker::Api::Resources::BaseResource#malformed_request?
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 68 def parsed_pacticipant @new_model ||= decorator_for(OpenStruct.new).from_json(request_body) end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 72 def policy_name :'pacticipants::pacticipants' end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 43 def post_is_create? true end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 39 def request_body_required? request.post? end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 56 def to_json generate_json(pacticipant_service.find_all_pacticipants(filter_options, pagination_options, eager_load_associations)) end
Private Instance Methods
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 86 def eager_load_associations decorator_class(:deprecated_pacticipants_decorator).eager_load_associations end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 90 def filter_options if (request.query.has_key?("q")) { query_string: request.query["q"] } else {} end end
Source
# File lib/pact_broker/api/resources/pacticipants.rb, line 78 def schema if request.get? PactBroker::Api::Contracts::PaginationQueryParamsSchema else PactBroker::Api::Contracts::PacticipantCreateSchema end end