changeset 1618:e198d165ce75 iiif-presentation-2

cleanup, trying to improve mirador performance.
author robcast
date Fri, 26 May 2017 18:14:08 +0200
parents 07fa6a16073e
children 221685dd882a
files iiif-presentation/src/main/java/digilib/servlet/Manifester.java
diffstat 1 files changed, 27 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/iiif-presentation/src/main/java/digilib/servlet/Manifester.java	Fri May 26 15:47:14 2017 +0200
+++ b/iiif-presentation/src/main/java/digilib/servlet/Manifester.java	Fri May 26 18:14:08 2017 +0200
@@ -428,6 +428,9 @@
 	 */
     protected void writeImage(JsonGenerator manifest, int idx, DocuDirent imgFile, ImageSize imgSize,
             ManifestParams params) {
+        /*
+         * image
+         */        
         manifest.writeStartObject()
             .write("@type", "oa:Annotation")
             .write("@id", params.manifestUrl + "/annotation/p" + idx + "-image")
@@ -437,7 +440,8 @@
          */
         writeResource(manifest, imgFile, imgSize, params);
 
-        manifest.write("on", params.manifestUrl + "/canvas/p" + idx).writeEnd(); // image
+        manifest.write("on", params.manifestUrl + "/canvas/p" + idx)
+            .writeEnd(); // image
     }
 
 	/**
@@ -453,6 +457,9 @@
         String iiifImgBaseUrl = params.imgApiUrl + "/" + params.identifier + this.iiifPathSep + FileOps.basename(imgFile.getName());
         // IIIF image parameters
         String imgUrl = iiifImgBaseUrl + "/full/full/0/default.jpg";
+        /*
+         * resource
+         */
 		manifest.writeStartObject("resource")
 			.write("@id", imgUrl)
 			.write("@type", "dctypes:Image")
@@ -462,7 +469,7 @@
         /*
          * (iiif) service
          */
-        writeService(manifest, iiifImgBaseUrl, params);
+        writeService(manifest, iiifImgBaseUrl, imgSize, params);
         
         manifest.writeEnd(); // resource
 	}
@@ -470,13 +477,30 @@
 	/**
 	 * @param manifest
 	 * @param iiifImgBaseUrl 
+	 * @param imgSize 
 	 * @param servletUrl 
 	 */
-	protected void writeService(JsonGenerator manifest, String iiifImgBaseUrl, ManifestParams params) {
+    protected void writeService(JsonGenerator manifest, String iiifImgBaseUrl, ImageSize imgSize,
+            ManifestParams params) {
+	    /*
+	     * service
+	     */
 		manifest.writeStartObject("service")
 			.write("@context", "http://iiif.io/api/image/2/context.json")
 			.write("@id", iiifImgBaseUrl)
 			.write("profile", "http://iiif.io/api/image/2/profiles/level2.json")
+			// maximum size
+            .write("height", imgSize.getHeight())
+            .write("width", imgSize.getWidth())
+            /* other sizes
+            .writeStartArray("sizes")
+            .writeStartObject()
+            .write("width", 100)
+            .write("height", 100)
+            .writeEnd() // size
+            .writeEnd() // sizes
+            */
+            
 			.writeEnd(); // service
 	}