Sha256: 9631a3232fbd2ec953f03e7d57865e07d0d28cee2af198c68f3f718ec496f25f

Contents?: true

Size: 1.04 KB

Versions: 12

Compression:

Stored size: 1.04 KB

Contents

require 'sequel'
require 'pact_broker/domain/pacticipant'
require 'pact_broker/repositories/helpers'

module PactBroker
  module Repositories
    class PacticipantRepository

      include Helpers

      def find_by_name name
        PactBroker::Domain::Pacticipant.where(name_like(:name, name)).single_record
      end

      def find_by_id id
        PactBroker::Domain::Pacticipant.where(id: id).single_record
      end

      def find_all
        PactBroker::Domain::Pacticipant.order(:name).all
      end

      def find_by_name_or_create name
        if pacticipant = find_by_name(name)
          pacticipant
        else
          create name: name
        end
      end

      def create args
        PactBroker::Domain::Pacticipant.new(name: args[:name], repository_url: args[:repository_url]).save(raise_on_save_failure: true)
      end

      def pacticipant_names
        PactBroker::Domain::Pacticipant.select(:name).order(:name).collect{ | pacticipant| pacticipant.name }
      end

      def find_latest_version name

      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
pact_broker-1.14.0 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.13.0 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.12.0 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.11.2 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.11.1 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.11.0 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.10.0 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.9.3 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.9.2 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.9.1 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.9.0 lib/pact_broker/repositories/pacticipant_repository.rb
pact_broker-1.9.0.rc1 lib/pact_broker/repositories/pacticipant_repository.rb