Sha256: 0e55731f508f75b212d04a0e722d3e457d336126cccbd89a69fd8d8a84c8e8b5

Contents?: true

Size: 796 Bytes

Versions: 9

Compression:

Stored size: 796 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", "OPTIONS"]
        end

        def resource_exists?
          pacticipant
        end

        def to_csv
          if group
            decorator_class(:relationships_csv_decorator).new(group).to_csv
          else
            ""
          end
        end

        def policy_name
          :'groups::group'
        end

        private

        def group
          @group ||= group_service.find_group_containing(pacticipant)
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
pact_broker-2.79.1 lib/pact_broker/api/resources/group.rb
pact_broker-2.79.0 lib/pact_broker/api/resources/group.rb
pact_broker-2.78.1 lib/pact_broker/api/resources/group.rb
pact_broker-2.78.0 lib/pact_broker/api/resources/group.rb
pact_broker-2.77.0 lib/pact_broker/api/resources/group.rb
pact_broker-2.76.2 lib/pact_broker/api/resources/group.rb
pact_broker-2.76.1 lib/pact_broker/api/resources/group.rb
pact_broker-2.76.0 lib/pact_broker/api/resources/group.rb
pact_broker-2.75.0 lib/pact_broker/api/resources/group.rb