annotate src/main/java/de/mpiwg/itgroup/diva/rest/DivaProxy.java @ 210:0aa8975784d9

add deprecation notes to interface.
author casties
date Mon, 02 Sep 2019 13:14:08 +0200
parents f2c1e5be355c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
jurzua
parents:
diff changeset
1 package de.mpiwg.itgroup.diva.rest;
jurzua
parents:
diff changeset
2
jurzua
parents:
diff changeset
3 import javax.ws.rs.GET;
jurzua
parents:
diff changeset
4 import javax.ws.rs.Path;
jurzua
parents:
diff changeset
5 import javax.ws.rs.PathParam;
jurzua
parents:
diff changeset
6 import javax.ws.rs.Produces;
jurzua
parents:
diff changeset
7 import javax.ws.rs.QueryParam;
jurzua
parents:
diff changeset
8 import javax.ws.rs.core.MediaType;
jurzua
parents:
diff changeset
9 import javax.ws.rs.core.Response;
jurzua
parents:
diff changeset
10
jurzua
parents:
diff changeset
11 import de.mpiwg.itgroup.ismi.utils.HTTPUtils;
jurzua
parents:
diff changeset
12 import de.mpiwg.itgroup.ismi.utils.HTTPUtils.HttpResponse;
jurzua
parents:
diff changeset
13 import de.mpiwg.itgroup.ismi.utils.HTTPUtils.HttpStringResponse;
jurzua
parents:
diff changeset
14
jurzua
parents:
diff changeset
15 @Path("/diva/proxy")
jurzua
parents:
diff changeset
16 public class DivaProxy {
155
f2c1e5be355c changing images.rasi.mcgill.ca URLs again.
casties
parents: 154
diff changeset
17 // FIXME: is this still used?
f2c1e5be355c changing images.rasi.mcgill.ca URLs again.
casties
parents: 154
diff changeset
18
154
84d20006521c change McGill image server URL.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 1
diff changeset
19 // was https://images.rasi.mcgill.ca/fcgi-bin/iipsrv.fcgi?FIF=/data7/srv/images/
155
f2c1e5be355c changing images.rasi.mcgill.ca URLs again.
casties
parents: 154
diff changeset
20 private static String IMG_SERVER = "https://images.rasi.mcgill.ca/fcgi-bin/iipsrv.fcgi?FIF=/";
1
jurzua
parents:
diff changeset
21
jurzua
parents:
diff changeset
22 @GET
jurzua
parents:
diff changeset
23 @Path("/image")
jurzua
parents:
diff changeset
24 @Produces("image/jpeg")
jurzua
parents:
diff changeset
25 public Response
jurzua
parents:
diff changeset
26 image(
jurzua
parents:
diff changeset
27 @QueryParam("f") String f,
jurzua
parents:
diff changeset
28 @QueryParam("w") String w) throws Exception{
jurzua
parents:
diff changeset
29
jurzua
parents:
diff changeset
30 String dirName = getDirName(f);
jurzua
parents:
diff changeset
31
jurzua
parents:
diff changeset
32 String url = IMG_SERVER + dirName + "/" + f + "&WID=" + w + "&CVT=JPG";
jurzua
parents:
diff changeset
33
jurzua
parents:
diff changeset
34
jurzua
parents:
diff changeset
35 HttpResponse resp = HTTPUtils.getHttpSSLResponse(url);
jurzua
parents:
diff changeset
36
jurzua
parents:
diff changeset
37 if(resp.code == 200){
jurzua
parents:
diff changeset
38 return Response.ok(resp.content).build();
jurzua
parents:
diff changeset
39 }
jurzua
parents:
diff changeset
40
jurzua
parents:
diff changeset
41 return Response.status(Response.Status.NOT_FOUND).build();
jurzua
parents:
diff changeset
42 }
jurzua
parents:
diff changeset
43
jurzua
parents:
diff changeset
44
jurzua
parents:
diff changeset
45 @GET
jurzua
parents:
diff changeset
46 @Path("/json/{file}")
jurzua
parents:
diff changeset
47 @Produces(MediaType.APPLICATION_JSON)
jurzua
parents:
diff changeset
48 public Response
jurzua
parents:
diff changeset
49 json(
jurzua
parents:
diff changeset
50 @PathParam("file") String file) throws Exception{
jurzua
parents:
diff changeset
51
155
f2c1e5be355c changing images.rasi.mcgill.ca URLs again.
casties
parents: 154
diff changeset
52 // was HTTPUtils.getHttpSSLStringResponse(https://images.rasi.mcgill.ca/data/
f2c1e5be355c changing images.rasi.mcgill.ca URLs again.
casties
parents: 154
diff changeset
53 HttpStringResponse resp = HTTPUtils.getHttpStringResponse("https://images.rasi.mcgill.ca/data/" + file + ".json");
1
jurzua
parents:
diff changeset
54 if(resp.code == 200){
jurzua
parents:
diff changeset
55 return Response.ok(resp.content).build();
jurzua
parents:
diff changeset
56 }
jurzua
parents:
diff changeset
57
jurzua
parents:
diff changeset
58 return Response.status(Response.Status.NOT_FOUND).build();
jurzua
parents:
diff changeset
59
jurzua
parents:
diff changeset
60 }
jurzua
parents:
diff changeset
61
jurzua
parents:
diff changeset
62
jurzua
parents:
diff changeset
63
jurzua
parents:
diff changeset
64 private String getDirName(String fileName){
jurzua
parents:
diff changeset
65 String[] array = fileName.split("_");
jurzua
parents:
diff changeset
66 return fileName.replace("_" + array[array.length-1], "");
jurzua
parents:
diff changeset
67 }
jurzua
parents:
diff changeset
68
jurzua
parents:
diff changeset
69
jurzua
parents:
diff changeset
70 }