2 * Copyright (c) 1995, Index Data.
4 * Permission to use, copy, modify, distribute, and sell this software and
5 * its documentation, in whole or in part, for any purpose, is hereby granted,
8 * 1. This copyright and permission notice appear in all copies of the
9 * software and its documentation. Notices of copyright or attribution
10 * which appear at the beginning of any file must remain unchanged.
12 * 2. The names of Index Data or the individual authors may not be used to
13 * endorse or promote products derived from this software without specific
14 * prior written permission.
16 * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND,
17 * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
18 * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
19 * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
20 * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
21 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR
22 * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
23 * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
33 typedef struct Z_TaskPackage
36 char *packageName; /* OPTIONAL */
37 char *userId; /* OPTIONAL */
38 Z_IntUnit *retentionTime; /* OPTIONAL */
39 Z_Permissions *permissions; /* OPTIONAL */
40 char *description; /* OPTIONAL */
41 Odr_oct *targetReference;
42 char *creationDateTime; /* OPTIONAL */
44 #define Z_TaskPackage_pending 0
45 #define Z_TaskPackage_active 1
46 #define Z_TaskPackage_complete 2
47 #define Z_TaskPackage_aborted 3
48 int num_packageDiagnostics;
49 Z_DiagRec **packageDiagnostics; /* OPTIONAL */
50 Z_External *taskSpecificParameters;
53 int z_TaskPackage(ODR o, Z_TaskPackage **p, int opt);
55 /* ----------------------- ITEM ORDER ------------------------- */
57 typedef struct Z_IOTargetPart
59 Z_External *itemRequest; /* OPTIONAL */
60 Z_External *statusOrErrorReport;
61 int *auxiliaryStatus; /* OPTIONAL */
62 #define Z_IOTargetPart_notReceived 1
63 #define Z_IOTargetPart_loanQueue 2
64 #define Z_IOTargetPart_forwarded 3
65 #define Z_IOTargetPart_unfilledCopyright 4
66 #define Z_IOTargetPart_filledCopyright 1
69 typedef struct Z_IOResultSetItem
75 typedef struct Z_IOOriginPartNotToKeep
77 Z_IOResultSetItem *resultSetItem; /* OPTIONAL */
78 Z_External *itemRequest; /* OPTIONAL */
79 } Z_IOOriginPartNotToKeep;
81 typedef struct Z_IOContact
83 char *name; /* OPTIONAL */
84 char *phone; /* OPTIONAL */
85 char *email; /* OPTIONAL */
88 typedef struct Z_IOCreditCardInfo
95 typedef struct Z_IOBilling
98 #define Z_IOBilling_billInvoice 0
99 #define Z_IOBilling_prepay 1
100 #define Z_IOBilling_depositAccount 2
101 #define Z_IOBilling_creditCard 3
102 #define Z_IOBilling_cardInfoPreviouslySupplied 4
103 #define Z_IOBilling_privateKnown 5
104 #define Z_IOBilling_privateNotKnown 6
108 Z_IOCreditCardInfo *creditCard;
109 Z_External *privateNotKnown;
111 char *customerReference; /* OPTIONAL */
112 char *customerPONumber; /* OPTIONAL */
115 typedef struct Z_IOOriginPartToKeep
117 Z_External *supplDescription; /* OPTIONAL */
118 Z_IOContact *contact; /* OPTIONAL */
119 Z_IOBilling *addlBilling; /* OPTIONAL */
120 } Z_IOOriginPartToKeep;
122 typedef struct Z_IORequest
124 Z_IOOriginPartToKeep *toKeep; /* OPTIONAL */
125 Z_IOOriginPartNotToKeep *notToKeep;
128 typedef struct Z_IOTaskPackage
130 Z_IOOriginPartToKeep *originPart; /* OPTIONAL */
131 Z_IOTargetPart *targetPart;
134 typedef struct Z_ItemOrder
137 #define Z_ItemOrder_esRequest 0
138 #define Z_ItemOrder_taskPackage 1
141 Z_IORequest *esRequest;
142 Z_IOTaskPackage *taskPackage;
146 int z_ItemOrder(ODR o, Z_ItemOrder **p, int opt);
148 /* ----------------------- ITEM UPDATE ------------------------ */
150 typedef struct Z_IUSuppliedRecordsId
153 #define Z_IUSuppliedRecordsId_timeStamp 1
154 #define Z_IUSuppliedRecordsId_versionNumber 2
155 #define Z_IUSuppliedRecordsId_previousVersion 3
159 Odr_external *previousVersion;
161 } Z_IUSuppliedRecordsId;
163 typedef struct Z_IUCorrelationInfo
165 char *note; /* OPTIONAL */
166 int *id; /* OPTIONAL */
167 } Z_IUCorrelationInfo;
169 typedef struct Z_IUSuppliedRecords_elem
172 #define Z_IUSuppliedRecords_number 1
173 #define Z_IUSuppliedRecords_string 2
174 #define Z_IUSuppliedRecords_opaque 3
180 Z_IUSuppliedRecordsId *supplementalId; /* OPTIONAL */
181 Z_IUCorrelationInfo *correlationInfo; /* OPTIONAL */
182 Odr_external *record;
183 } Z_IUSuppliedRecords_elem;
185 typedef struct Z_IUSuppliedRecords
188 Z_IUSuppliedRecords_elem **elements;
189 } Z_IUSuppliedRecords;
191 typedef struct Z_IUOriginPartToKeep
194 #define Z_IUOriginPartToKeep_recordInsert 1
195 #define Z_IUOriginPartToKeep_recordReplace 2
196 #define Z_IUOriginPartToKeep_recordDelete 3
197 #define Z_IUOriginPartToKeep_elementUpdate 4
199 Odr_oid *schema; /* OPTIONAL */
200 char *elementSetName; /* OPTIONAL */
201 } Z_IUOriginPartToKeep;
203 typedef struct Z_IUTaskPackageRecordStructure
206 #define Z_IUTaskPackageRecordStructure_record 1
207 #define Z_IUTaskPackageRecordStructure_diagnostic 2
209 Odr_external *record;
210 Z_DiagRec *diagnostic;
212 Z_IUCorrelationInfo *correlationInfo; /* OPTIONAL */
214 #define Z_IUTaskPackageRecordStructureS_success 1
215 #define Z_IUTaskPackageRecordStructureS_queued 2
216 #define Z_IUTaskPackageRecordStructureS_inProcess 3
217 #define Z_IUTaskPackageRecordStructureS_failure 4
218 } Z_IUTaskPackageRecordStructure;
220 typedef struct Z_IUTargetPart
223 #define Z_IUTargetPart_success 1
224 #define Z_IUTargetPart_partial 2
225 #define Z_IUTargetPart_failure 3
226 int num_globalDiagnostics;
227 Z_DiagRec **globalDiagnostics; /* OPTIONAL */
228 int num_taskPackageRecords;
229 Z_IUTaskPackageRecordStructure **taskPackageRecords;
232 typedef struct Z_IUUpdateEsRequest
234 Z_IUOriginPartToKeep *toKeep;
235 Z_IUSuppliedRecords *notToKeep;
236 } Z_IUUpdateEsRequest;
238 typedef struct Z_IUUpdateTaskPackage
240 Z_IUOriginPartToKeep *originPart;
241 Z_IUTargetPart *targetPart;
242 } Z_IUUpdateTaskPackage;
244 typedef struct Z_IUUpdate
247 #define Z_IUUpdate_esRequest 1
248 #define Z_IUUpdate_taskPackage 2
250 Z_IUUpdateEsRequest *esRequest;
251 Z_IUUpdateTaskPackage *taskPackage;
255 int z_IUUpdate(ODR o, Z_IUUpdate **p, int opt);