Sha256: e9b1284e09b4be35b2e13dd6a456256e1d2c8ecf4602512ad5efa22afb7acb9a

Contents?: true

Size: 857 Bytes

Versions: 1

Compression:

Stored size: 857 Bytes

Contents

require 'pact_broker/api/resources/base_resource'
require 'pact_broker/api/decorators/relationships_csv_decorator'

module PactBroker

  module Api
    module Resources

      class Group < BaseResource

        def content_types_provided
          [["text/csv", :to_csv]]
        end

        def allowed_methods
          ["GET"]
        end

        def to_csv
          generate_csv(group_service.find_group_containing @pacticipant)
        end

        def generate_csv group
          PactBroker::Api::Decorators::RelationshipsCsvDecorator.new(group).to_csv
        end

        def pacticipant_name
          identifier_from_path[:pacticipant_name]
        end

        def resource_exists?
          @pacticipant = pacticipant_service.find_pacticipant_by_name(pacticipant_name)
          @pacticipant != nil
        end

      end
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pact_broker-1.2.0 lib/pact_broker/api/resources/group.rb