File: Add-cds.tools.ExtApp.patch

package info (click to toggle)
starjava-topcat 4.6.2-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 22,216 kB
  • sloc: java: 65,710; xml: 29,046; sh: 73; makefile: 16
file content (100 lines) | stat: -rw-r--r-- 4,308 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
From: Ole Streicher <olebole@debian.org>
Date: Fri, 17 Feb 2017 16:44:42 +0100
Subject: Add cds.tools.ExtApp

This file is copied from Aladin.
---
 src/main/cds/tools/ExtApp.java | 83 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 83 insertions(+)
 create mode 100644 src/main/cds/tools/ExtApp.java

diff --git a/src/main/cds/tools/ExtApp.java b/src/main/cds/tools/ExtApp.java
new file mode 100644
index 0000000..50dc0c2
--- /dev/null
+++ b/src/main/cds/tools/ExtApp.java
@@ -0,0 +1,83 @@
+// Copyright 2010 - UDS/CNRS
+// The Aladin program is distributed under the terms
+// of the GNU General Public License version 3.
+//
+//This file is part of Aladin.
+//
+//    Aladin is free software: you can redistribute it and/or modify
+//    it under the terms of the GNU General Public License as published by
+//    the Free Software Foundation, version 3 of the License.
+//
+//    Aladin is distributed in the hope that it will be useful,
+//    but WITHOUT ANY WARRANTY; without even the implied warranty of
+//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//    GNU General Public License for more details.
+//
+//    The GNU General Public License is available in COPYING file
+//    along with Aladin.
+//
+
+package cds.tools;
+import java.io.*;
+
+/**
+ * Interface between two Virtual Observatory applications, such as
+ * Aladin (CDS) or VOPlot (PSPL/IUCAA)
+ *
+ * @author Pierre Fernique [CDS] on a collaboration between
+ *         CDS team and PSPL/IUCAA team
+ * @version 1.0 : 14 march 2003 creation
+ */
+public abstract interface ExtApp {
+   /**
+    * Allow an "external" application to send new data via an InputStream
+    * in VOTable format. The reference to this "external" application has to
+    * passed in order to eventually calls back the "external" application,
+    * or to be called again by the "external" application concerning the
+    * VOTable objects that it had sent before (see showVOTableObject() and
+    * selectVOTableObject() methods below)
+    * For this calls or callbacks, the "external" application has to
+    * create a new VOTable column giving an unique identifier for each object
+    * that it has sent. This column has to be described by the following
+    * VOTable FIELD tag : <FIELD name="_OID" type="hidden">. It is strongly
+    * recommended to add an unambigus prefix to avoid conflicts with the
+    * assignations done by the "external" application and its own assignations.
+    * The unicity has to be maintained during all the session. It means that
+    * successive VOTables must have difference unique identifiers.
+    * @param app "external" application compliante with ExtApp java interface
+    * @param in VOTable stream
+    */
+   public abstract void loadVOTable(ExtApp app, InputStream in);
+
+   /**
+    * Allow an "external" application to show or hide this application
+    */
+   public abstract void setVisible(boolean flag);
+
+   /**
+    * Allow an "external" application to control by script this application
+    * @param cmd script command depending to this application
+    * @return error or messages, can be null
+    */
+   public abstract String execCommand(String cmd);
+
+   /**
+    * Call or Callback asking the other application to SHOW objects found
+    * in a VOTable previous transmission via loadVOTable() method.
+    * The action "SHOW" is a choice of the other application (for example a blink)
+    * @param oid list of identifiers found in VOTables (see comment of the
+    *            loadVOTable() method.
+    */
+   public abstract void showVOTableObject(String oid[]);
+
+   /**
+    * Call or Callback asking the other  application to SELECT objects found
+    * in a VOTable previous transmission via loadVOTable() method.
+    * The action "SELECT" is a choice of the other application (for example select
+    * objects by showing the corresponding measurements, it can be the same thing
+    * that the "SHOW" action - see showVOTableObject() method.)
+    * @param oid list of identifiers found in VOTables (see comment of the
+    *            loadVOTable() method.
+    */
+   public abstract void selectVOTableObject(String oid[]);
+}
\ No newline at end of file