root/main/trunk/greenstone2/runtime-src/src/corba/corbaiface.idl @ 24970

Revision 24970, 5.2 KB (checked in by ak19, 8 years ago)

Dr Bainbridge noticed that previous commits to corba needed an additional change: corbaiface.idl needs the new method's definition added in as well. Still have compilation errors with corbainterface not getting generated from this even with enable-corba turned on when configuring, but this step is necessary regardless.

  • Property svn:keywords set to Author Date Id Revision
Line 
1// basic elements for text
2
3module gsdlInterface {
4
5typedef sequence<unsigned short> usString;
6
7typedef sequence<string> stringSeq;
8
9struct corbatext_t
10{
11  usString text;
12  unsigned short encoding;
13  unsigned long  length;
14};
15
16typedef sequence<corbatext_t> corbatext_tarray;
17
18typedef corbatext_tarray corbatext_tset;
19
20struct corbatext_tmap
21{
22  corbatext_tarray names;
23  corbatext_tarray values;
24};
25
26// standard error values
27
28enum corbaComError
29{ corbaNoError,
30  corbaAuthenticationFailure,
31  corbaProtocolError,
32  corbaConfigurationError,
33  corbaSystemProblem
34};
35
36//
37// getColInfo response
38//
39
40struct corbaShortColInfo
41{
42  corbatext_t name;
43  corbatext_t host;
44  long        response;
45};
46
47struct corbaColInfoResponse
48{
49  boolean       useBook;
50  corbaShortColInfo shoftInfo;
51  boolean           isPublic;
52  boolean           isBeta;
53  unsigned long     buildDate;
54  corbatext_tarray  ccsCols;        // Added 05/04/2000
55  corbatext_tarray  languages;
56  unsigned long     numDocs;
57  unsigned long     numWords;
58  unsigned long     numBytes;
59  corbatext_tmap    collectionMeta;
60  corbatext_tmap    format;
61  corbatext_tmap    building;
62  corbatext_t       httpdomain ;    // Added 27/07/2000
63  corbatext_t       httpprefix;     // Added 27/07/2000
64  corbatext_t       receptionist;
65};
66
67//
68// getDocument request
69//
70
71struct corbaDocRequest
72{
73  corbatext_t OID;
74  corbatext_t docType;
75  corbatext_t docFormat;
76};
77
78//
79// getDocument response
80//
81
82struct corbaDocResponse
83{
84  corbatext_t doc;
85};
86
87enum corbaFilterType
88{
89  booleanType,
90  integerType,
91  enumeratedType,
92  stringType
93};
94
95enum corbaFilterRepeatable
96{
97  onePerQuery,
98  onePerTerm,
99  nPerTerm
100};
101
102struct corbaFilterOption
103{
104  corbatext_t           name;
105  corbaFilterType       type;
106  corbaFilterRepeatable repeatable;
107  corbatext_t           defaultValue;
108  corbatext_tarray      validValues;
109};
110
111typedef sequence<corbaFilterOption> corbaFilterOptionList;
112
113struct corbaFilterOptionsResponse
114{
115  corbaFilterOptionList options;
116  corbatext_tarray      names;
117};
118
119//
120// structures for filter call
121//
122
123struct corbaOptionValue
124{
125  corbatext_t name;
126  corbatext_t value;
127};
128
129typedef sequence<corbaOptionValue> corbaOptionValue_array;
130
131struct corbaFilterRequest
132{
133  corbatext_t            filter;
134  corbaOptionValue_array filterOptions;
135  corbatext_tarray       docSet;
136  long                   filterResultOptions;
137  corbatext_t            requestParams;
138  corbatext_t            refParams;
139  corbatext_tset         fields;
140  boolean                getParents;
141};
142
143struct corbaTermInfo
144{
145  corbatext_t      term;
146  long             frequency;
147  corbatext_tarray matchTerms;
148};
149
150typedef sequence<corbaTermInfo> corbaTermInfo_array;
151
152struct corbaMetadataInfo
153{
154  corbatext_t      params;
155  boolean          isRef;
156  corbatext_tarray values;
157  long             id;
158  long             parentid; // dodge for avoiding pointers for the moment
159};
160
161typedef sequence<corbaMetadataInfo> corbaMetadataInfo_array;
162
163struct corbaMetadataInfo_map
164{
165  corbatext_tarray        names;
166  corbaMetadataInfo_array values;
167};
168
169typedef sequence<long> corbaDocFreq_array;
170
171struct corbaResultDocInfo
172{
173  corbatext_t             OID;
174  long                    resultNum;
175  long                    ranking;
176  long                    termsMatched;
177  long                    phraseMatched;
178  corbaDocFreq_array      docFreq;
179  corbaMetadataInfo_map   metadata;
180  corbatext_t             classifierMetadataType;    // Added 05/04/2000
181  long                    classifierMetadataOffset;  // Added 05/04/2000
182  corbaMetadataInfo_array metaparents;
183};
184
185typedef sequence<corbaResultDocInfo> corbaResultDocInfo_array;
186
187enum corbaIsApprox
188{
189  resultExact,
190  resultApprox,
191  resultMany
192};
193
194struct corbaFilterResponse
195{
196  long                     numDocs;
197  corbaIsApprox            isApprox;
198  corbaTermInfo_array      termInfo;
199  corbaResultDocInfo_array docInfo;
200};
201
202interface corbaiface
203{
204  boolean   initialise(inout corbaComError error);
205  void      configure(in corbatext_t key, in corbatext_tarray cfgline,
206              inout corbaComError error);
207  void      collectionList(inout corbatext_tarray collist,
208               inout corbaComError error);
209  void      hasCollection(in corbatext_t corbaCollection, inout boolean has,
210               inout corbaComError error);
211  void      ping(in corbatext_t collection, inout boolean wasSuccess, inout corbaComError error);
212  void      getDocument(in corbatext_t collection,
213            inout corbaDocRequest request, inout corbaDocResponse response,
214            inout corbaComError error);
215  void      getCollectInfo(in corbatext_t collection,
216               inout corbaColInfoResponse response,
217               inout corbaComError error);
218  void      getFilterInfo(in corbatext_t collection,
219                          inout corbatext_tarray filterNames,
220              inout corbaComError error);
221  void      getFilterOptions(in corbatext_t collection,
222                             in corbatext_t option,
223                             inout corbaFilterOptionsResponse response,
224                 inout corbaComError error);
225  void      filter(in corbatext_t collection,
226           in corbaFilterRequest request,
227                   inout corbaFilterResponse response,
228                   inout corbaComError error);
229  void      get_rss_items (const text_t &collection,
230               const text_t &gsdlhome,
231               text_t &rss_items,
232               comerror_t &err,
233               ostream &logout);
234};
235
236};
Note: See TracBrowser for help on using the browser.