Sha256: 89d5059fe9ed515b4f4c940ecd025eb201bcd3b16eda3380bd725b08b03f61ab

Contents?: true

Size: 623 Bytes

Versions: 4

Compression:

Stored size: 623 Bytes

Contents

module IIIFManifest
  class ManifestBuilder
    class ImageServiceBuilder
      attr_reader :iiif_endpoint, :iiif_service_factory
      def initialize(iiif_endpoint, iiif_service_factory:)
        @iiif_endpoint = iiif_endpoint
        @iiif_service_factory = iiif_service_factory
      end

      def apply(resource)
        service['@context'] = iiif_endpoint.context
        service['@id'] = iiif_endpoint.url
        service['profile'] = iiif_endpoint.profile
        resource.service = service
      end

      private

        def service
          @service ||= iiif_service_factory.new
        end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
iiif_manifest-1.0.1 lib/iiif_manifest/manifest_builder/image_service_builder.rb
iiif_manifest-1.0.0 lib/iiif_manifest/manifest_builder/image_service_builder.rb
iiif_manifest-0.6.0 lib/iiif_manifest/manifest_builder/image_service_builder.rb
iiif_manifest-0.5.0 lib/iiif_manifest/manifest_builder/image_service_builder.rb