Mercurial > hg > digilibservice
annotate client/src/main/java/info/textgrid/middleware/digilib/clients/cli/DigilibCli.java @ 11:ab4794707336 default tip
pluginManagement crap for new m2e Eclipse plugin...
author | casties |
---|---|
date | Thu, 23 Jun 2011 19:22:56 +0200 |
parents | fe0a111cc8f5 |
children |
rev | line source |
---|---|
7 | 1 /** |
2 * | |
3 */ | |
4 package info.textgrid.middleware.digilib.clients.cli; | |
5 | |
6 import java.io.File; | |
7 import java.io.FileOutputStream; | |
8 import java.io.IOException; | |
9 import java.io.OutputStream; | |
8 | 10 import java.net.MalformedURLException; |
11 import java.net.URL; | |
7 | 12 |
13 import javax.xml.ws.Holder; | |
14 | |
15 import info.textgrid.namespaces.middleware.digilib.services.digilibservice.DigilibService; | |
16 import info.textgrid.namespaces.middleware.digilib.services.digilibservice.DigilibServicePortType; | |
17 | |
18 /** | |
19 * @author casties | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
20 * |
7 | 21 */ |
22 public class DigilibCli { | |
23 | |
24 /** | |
25 * @param args | |
26 */ | |
27 public static void main(String[] args) { | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
28 if (args.length < 4) { |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
29 System.err |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
30 .println("use: DigilibCli SID URI QUERY FILENAME [SERVERURL]"); |
7 | 31 System.exit(1); |
32 } | |
33 String sid = args[0]; | |
34 String uri = args[1]; | |
35 String query = args[2]; | |
36 String filename = args[3]; | |
8 | 37 URL serverUrl = null; |
38 try { | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
39 if (args.length > 4) { |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
40 serverUrl = new URL(args[4]); |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
41 } else { |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
42 serverUrl = new URL( |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
43 "http://localhost:8080/digilibservice-service/service?wsdl"); |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
44 } |
8 | 45 } catch (MalformedURLException e1) { |
46 // TODO Auto-generated catch block | |
47 e1.printStackTrace(); | |
48 } | |
49 System.out.println("service at " + serverUrl); | |
7 | 50 // call service |
8 | 51 byte[] imageData = getScaledImage(sid, uri, query, serverUrl); |
7 | 52 // try to copy to file |
53 System.out.println("writing " + filename); | |
54 File f = new File(filename); | |
55 try { | |
56 OutputStream ostream = new FileOutputStream(f); | |
57 ostream.write(imageData); | |
58 ostream.close(); | |
59 } catch (IOException e) { | |
60 // TODO Auto-generated catch block | |
61 e.printStackTrace(); | |
62 } | |
63 System.out.println("Done."); | |
64 } | |
65 | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
66 public static byte[] getScaledImage(String sid, String uri, String query, |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
67 URL serverUrl) { |
8 | 68 DigilibService service = new DigilibService(serverUrl); |
7 | 69 DigilibServicePortType port = service.getDigilibServicePort(); |
70 String logParam = null; | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
71 // Holder for return data |
7 | 72 Holder<String> mimeType = new Holder<String>(); |
73 Holder<byte[]> imageData = new Holder<byte[]>(); | |
74 Holder<Integer> width = new Holder<Integer>(); | |
75 Holder<Integer> height = new Holder<Integer>(); | |
76 // call service -- fills Holder | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
77 port.getScaledImage(sid, uri, query, logParam, mimeType, imageData, |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
78 width, height); |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
79 System.out.println("mimeType=" + mimeType.value); |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
80 System.out.println("imageData=" + imageData.value); |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
81 System.out.println("width=" + width.value); |
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
82 System.out.println("height=" + height.value); |
7 | 83 return imageData.value; |
84 } | |
10
fe0a111cc8f5
server creates tgcrud port in constructor. client takes external server url.
casties
parents:
9
diff
changeset
|
85 |
7 | 86 } |