forked from pulibrary/plum
-
Notifications
You must be signed in to change notification settings - Fork 6
1.2 How Plum builds ranges in the manifest
Randall Floyd edited this page May 24, 2018
·
2 revisions
This describes how ranges are derived from logical order data and placed into a resource's manifest. See ideas for refactoring to Hyrax using the community supported iiif_manifest
gem.
Generation of structure (ranges) in manifest begins with:
GET /concern/scanned_resources/:id/manifest => curation_concerns/scanned_resources#manifest
The #manifest method in a registered curation concern (i.e. a ScannedResource) comes from:
- CurationConcerns::Manifest
- https://github.com/IU-Libraries-Joint-Development/pumpkin/blob/d0e720466e85ac0b89fd5497c51b089775ff326b/app/controllers/curation_concerns/curation_concerns_controller.rb#L4
- https://github.com/IU-Libraries-Joint-Development/pumpkin/blob/master/app/controllers/concerns/curation_concerns/manifest.rb
#manifest calls PolymorphicManifestBuilder
PolymorphicManifestBuilder invokes ManifestBuilder
ManifestBuilder is a service that assembles manifest pieces
ManifestBuilder calls RangeBuilder using the resource's logical_order
RangeBuilder
RangeBuilder uses the iiif-presentation gem (aka osullivan) to build out ranges on the manifest