Sha256: 22c303624c068caaebd3e8564ed8d850a4a50f8a90ae1a9eaf10df122de3aeb4

Contents?: true

Size: 613 Bytes

Versions: 17

Compression:

Stored size: 613 Bytes

Contents

module JSONAPIonify::Api
  module Resource::Builders
    class ResourceIdentiferBuilder < BaseBuilder
      include IdentityHelper

      attr_reader :example_id, :instance
      delegate :type, to: :resource, prefix: true

      def initialize(resource, instance:)
        super(resource)
        @instance = instance
        @example_id = resource.generate_id
      end

      def build
        return nil unless instance
        Objects::ResourceIdentifier.new.tap do |resource|
          resource[:type] = resource_type
          (id = build_id) && resource[:id] = id
        end
      end

    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
jsonapionify-0.12.10 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.9 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.8 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.7 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.5 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.4 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.3 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.2 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.1 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.12.0 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.11 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.10 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.9 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.8 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.7 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.6 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb
jsonapionify-0.11.5 lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb