Sha256: 018211f35816abf80c1aab1091df57a43279a71c3109e91ddabe3be02d291fa5

Contents?: true

Size: 1.31 KB

Versions: 3

Compression:

Stored size: 1.31 KB

Contents

require 'pact_broker/api/resources/base_resource'
require 'json'

module PactBroker
  module Api
    module Resources

      class Index < BaseResource

        def content_types_provided
          [["application/hal+json", :to_json]]
        end

        def allowed_methods
          ["GET"]
        end

        def to_json
          {
            _links: {
              'pb:self' =>
              {
                href: base_url,
                title: 'The Pact Broker index page',
                templated: false
              },
              'pb:latest-pacts' =>
              {
                href: base_url + '/pacts/latest',
                title: 'Retrieve latest pacts',
                templated: false
              },
              'pb:pacticipants' =>
              {
                href: base_url + '/pacticipants',
                title: 'Retrieve pacticipants',
                templated: false
              },
              'pb:webhooks' =>
              {
                href: base_url + '/webhooks',
                title: 'Webhooks',
                templated: false
              },'curies' =>
              [{
                name: 'pb',
                href: base_url + '/doc/{rel}',
                templated: true
              }]
            }
          }.to_json
        end


      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pact_broker-1.3.2.rc1 lib/pact_broker/api/resources/index.rb
pact_broker-1.3.1 lib/pact_broker/api/resources/index.rb
pact_broker-1.3.0 lib/pact_broker/api/resources/index.rb