Initial commit
[yaz4j-moved-to-github.git] / dependencies / yaz-2.1.28 / src / zes-update0.c
1 /** \file zes-update0.c
2     \brief ASN.1 Module ESFormat-Update0
3
4     Generated automatically by YAZ ASN.1 Compiler 0.4
5 */
6
7 #include <yaz/zes-update0.h>
8
9 int z_IU0UpdateEsRequest (ODR o, Z_IU0UpdateEsRequest **p, int opt, const char *name)
10 {
11         if (!odr_sequence_begin (o, p, sizeof(**p), name))
12                 return odr_missing(o, opt, name) && odr_ok (o);
13         return
14                 odr_explicit_tag (o, z_IU0OriginPartToKeep,
15                         &(*p)->toKeep, ODR_CONTEXT, 1, 0, "toKeep") &&
16                 odr_explicit_tag (o, z_IU0OriginPartNotToKeep,
17                         &(*p)->notToKeep, ODR_CONTEXT, 2, 0, "notToKeep") &&
18                 odr_sequence_end (o);
19 }
20
21 int z_IU0UpdateTaskPackage (ODR o, Z_IU0UpdateTaskPackage **p, int opt, const char *name)
22 {
23         if (!odr_sequence_begin (o, p, sizeof(**p), name))
24                 return odr_missing(o, opt, name) && odr_ok (o);
25         return
26                 odr_explicit_tag (o, z_IU0OriginPartToKeep,
27                         &(*p)->originPart, ODR_CONTEXT, 1, 0, "originPart") &&
28                 odr_explicit_tag (o, z_IU0TargetPart,
29                         &(*p)->targetPart, ODR_CONTEXT, 2, 0, "targetPart") &&
30                 odr_sequence_end (o);
31 }
32
33 int z_IU0Update (ODR o, Z_IU0Update **p, int opt, const char *name)
34 {
35         static Odr_arm arm[] = {
36                 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0Update_esRequest,
37                 (Odr_fun) z_IU0UpdateEsRequest, "esRequest"},
38                 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IU0Update_taskPackage,
39                 (Odr_fun) z_IU0UpdateTaskPackage, "taskPackage"},
40                 {-1, -1, -1, -1, (Odr_fun) 0, 0}
41         };
42         if (!odr_initmember(o, p, sizeof(**p)))
43                 return odr_missing(o, opt, name);
44         if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
45                 return 1;
46         if(o->direction == ODR_DECODE)
47                 *p = 0;
48         return odr_missing(o, opt, name);
49 }
50
51 int z_IU0OriginPartToKeep (ODR o, Z_IU0OriginPartToKeep **p, int opt, const char *name)
52 {
53         if (!odr_sequence_begin (o, p, sizeof(**p), name))
54                 return odr_missing(o, opt, name) && odr_ok (o);
55         return
56                 odr_implicit_tag (o, odr_integer,
57                         &(*p)->action, ODR_CONTEXT, 1, 0, "action") &&
58                 odr_implicit_tag (o, z_InternationalString,
59                         &(*p)->databaseName, ODR_CONTEXT, 2, 0, "databaseName") &&
60                 odr_implicit_tag (o, odr_oid,
61                         &(*p)->schema, ODR_CONTEXT, 3, 1, "schema") &&
62                 odr_implicit_tag (o, z_InternationalString,
63                         &(*p)->elementSetName, ODR_CONTEXT, 4, 1, "elementSetName") &&
64                 odr_sequence_end (o);
65 }
66
67 int z_IU0OriginPartNotToKeep (ODR o, Z_IU0OriginPartNotToKeep **p, int opt, const char *name)
68 {
69         return z_IU0SuppliedRecords (o, p, opt, name);
70 }
71
72 int z_IU0TargetPart (ODR o, Z_IU0TargetPart **p, int opt, const char *name)
73 {
74         if (!odr_sequence_begin (o, p, sizeof(**p), name))
75                 return odr_missing(o, opt, name) && odr_ok (o);
76         return
77                 odr_implicit_tag (o, odr_integer,
78                         &(*p)->updateStatus, ODR_CONTEXT, 1, 0, "updateStatus") &&
79                 odr_implicit_settag (o, ODR_CONTEXT, 2) &&
80                 (odr_sequence_of(o, (Odr_fun) z_DiagRec, &(*p)->globalDiagnostics,
81                   &(*p)->num_globalDiagnostics, "globalDiagnostics") || odr_ok(o)) &&
82                 odr_implicit_settag (o, ODR_CONTEXT, 3) &&
83                 odr_sequence_of(o, (Odr_fun) z_IU0TaskPackageRecordStructure, &(*p)->taskPackageRecords,
84                   &(*p)->num_taskPackageRecords, "taskPackageRecords") &&
85                 odr_sequence_end (o);
86 }
87
88 int z_IU0SuppliedRecordsId (ODR o, Z_IU0SuppliedRecordsId **p, int opt, const char *name)
89 {
90         static Odr_arm arm[] = {
91                 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0SuppliedRecordsId_timeStamp,
92                 (Odr_fun) odr_generalizedtime, "timeStamp"},
93                 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IU0SuppliedRecordsId_versionNumber,
94                 (Odr_fun) z_InternationalString, "versionNumber"},
95                 {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_IU0SuppliedRecordsId_previousVersion,
96                 (Odr_fun) z_External, "previousVersion"},
97                 {-1, -1, -1, -1, (Odr_fun) 0, 0}
98         };
99         if (!odr_initmember(o, p, sizeof(**p)))
100                 return odr_missing(o, opt, name);
101         if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
102                 return 1;
103         if(o->direction == ODR_DECODE)
104                 *p = 0;
105         return odr_missing(o, opt, name);
106 }
107
108 int z_IU0SuppliedRecords_elem (ODR o, Z_IU0SuppliedRecords_elem **p, int opt, const char *name)
109 {
110         static Odr_arm arm[] = {
111                 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0SuppliedRecords_elem_number,
112                 (Odr_fun) odr_integer, "number"},
113                 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IU0SuppliedRecords_elem_string,
114                 (Odr_fun) z_InternationalString, "string"},
115                 {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_IU0SuppliedRecords_elem_opaque,
116                 (Odr_fun) odr_octetstring, "opaque"},
117                 {-1, -1, -1, -1, (Odr_fun) 0, 0}
118         };
119         if (!odr_sequence_begin (o, p, sizeof(**p), name))
120                 return odr_missing(o, opt, name) && odr_ok (o);
121         return
122                 ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 1, "recordId") &&
123                 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
124                 odr_constructed_end (o)) || odr_ok(o)) &&
125                 odr_explicit_tag (o, z_IU0SuppliedRecordsId,
126                         &(*p)->supplementalId, ODR_CONTEXT, 2, 1, "supplementalId") &&
127                 odr_implicit_tag (o, z_IU0CorrelationInfo,
128                         &(*p)->correlationInfo, ODR_CONTEXT, 3, 1, "correlationInfo") &&
129                 odr_implicit_tag (o, z_External,
130                         &(*p)->record, ODR_CONTEXT, 4, 0, "record") &&
131                 odr_sequence_end (o);
132 }
133
134 int z_IU0SuppliedRecords (ODR o, Z_IU0SuppliedRecords **p, int opt, const char *name)
135 {
136         if (!odr_initmember (o, p, sizeof(**p)))
137                 return odr_missing(o, opt, name);
138         if (odr_sequence_of (o, (Odr_fun) z_IU0SuppliedRecords_elem, &(*p)->elements,
139                 &(*p)->num, name))
140                 return 1;
141         if(o->direction == ODR_DECODE)
142                 *p = 0;
143         return odr_missing(o, opt, name);
144 }
145
146 int z_IU0CorrelationInfo (ODR o, Z_IU0CorrelationInfo **p, int opt, const char *name)
147 {
148         if (!odr_sequence_begin (o, p, sizeof(**p), name))
149                 return odr_missing(o, opt, name) && odr_ok (o);
150         return
151                 odr_implicit_tag (o, z_InternationalString,
152                         &(*p)->note, ODR_CONTEXT, 1, 1, "note") &&
153                 odr_implicit_tag (o, odr_integer,
154                         &(*p)->id, ODR_CONTEXT, 2, 1, "id") &&
155                 odr_sequence_end (o);
156 }
157
158 int z_IU0TaskPackageRecordStructure (ODR o, Z_IU0TaskPackageRecordStructure **p, int opt, const char *name)
159 {
160         static Odr_arm arm[] = {
161                 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0TaskPackageRecordStructure_record,
162                 (Odr_fun) z_External, "record"},
163                 {ODR_EXPLICIT, ODR_CONTEXT, 2, Z_IU0TaskPackageRecordStructure_diagnostic,
164                 (Odr_fun) z_DiagRec, "diagnostic"},
165                 {-1, -1, -1, -1, (Odr_fun) 0, 0}
166         };
167         if (!odr_sequence_begin (o, p, sizeof(**p), name))
168                 return odr_missing(o, opt, name) && odr_ok (o);
169         return
170                 ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 1, "recordOrSurDiag") &&
171                 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
172                 odr_constructed_end (o)) || odr_ok(o)) &&
173                 odr_implicit_tag (o, z_IU0CorrelationInfo,
174                         &(*p)->correlationInfo, ODR_CONTEXT, 2, 1, "correlationInfo") &&
175                 odr_implicit_tag (o, odr_integer,
176                         &(*p)->recordStatus, ODR_CONTEXT, 3, 0, "recordStatus") &&
177                 odr_sequence_end (o);
178 }