1 /** \file zes-update.c
2     \brief ASN.1 Module ESFormat-Update
3 
4     Generated automatically by YAZ ASN.1 Compiler 0.4
5 */
6 #if HAVE_CONFIG_H
7 #include <config.h>
8 #endif
9 
10 #include <yaz/zes-update.h>
11 
z_IUUpdateEsRequest(ODR o,Z_IUUpdateEsRequest ** p,int opt,const char * name)12 int z_IUUpdateEsRequest(ODR o, Z_IUUpdateEsRequest **p, int opt, const char *name)
13 {
14 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
15 		return odr_missing(o, opt, name) && odr_ok (o);
16 	return
17 		odr_explicit_tag(o, z_IUOriginPartToKeep,
18 			&(*p)->toKeep, ODR_CONTEXT, 1, 0, "toKeep") &&
19 		odr_explicit_tag(o, z_IUOriginPartNotToKeep,
20 			&(*p)->notToKeep, ODR_CONTEXT, 2, 0, "notToKeep") &&
21 		odr_sequence_end(o);
22 }
23 
z_IUUpdateTaskPackage(ODR o,Z_IUUpdateTaskPackage ** p,int opt,const char * name)24 int z_IUUpdateTaskPackage(ODR o, Z_IUUpdateTaskPackage **p, int opt, const char *name)
25 {
26 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
27 		return odr_missing(o, opt, name) && odr_ok (o);
28 	return
29 		odr_explicit_tag(o, z_IUOriginPartToKeep,
30 			&(*p)->originPart, ODR_CONTEXT, 1, 0, "originPart") &&
31 		odr_explicit_tag(o, z_IUTargetPart,
32 			&(*p)->targetPart, ODR_CONTEXT, 2, 0, "targetPart") &&
33 		odr_sequence_end(o);
34 }
35 
z_IUUpdate(ODR o,Z_IUUpdate ** p,int opt,const char * name)36 int z_IUUpdate(ODR o, Z_IUUpdate **p, int opt, const char *name)
37 {
38 	static Odr_arm arm[] = {
39 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IUUpdate_esRequest,
40 		(Odr_fun) z_IUUpdateEsRequest, "esRequest"},
41 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IUUpdate_taskPackage,
42 		(Odr_fun) z_IUUpdateTaskPackage, "taskPackage"},
43 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
44 	};
45 	if (!odr_initmember(o, p, sizeof(**p)))
46 		return odr_missing(o, opt, name);
47 	if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
48 		return 1;
49 	if (o->direction == ODR_DECODE)
50 		*p = 0;
51 	return odr_missing(o, opt, name);
52 }
53 
z_IUOriginPartToKeep(ODR o,Z_IUOriginPartToKeep ** p,int opt,const char * name)54 int z_IUOriginPartToKeep(ODR o, Z_IUOriginPartToKeep **p, int opt, const char *name)
55 {
56 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
57 		return odr_missing(o, opt, name) && odr_ok (o);
58 	return
59 		odr_implicit_tag(o, odr_integer,
60 			&(*p)->action, ODR_CONTEXT, 1, 0, "action") &&
61 		odr_implicit_tag(o, z_InternationalString,
62 			&(*p)->databaseName, ODR_CONTEXT, 2, 0, "databaseName") &&
63 		odr_implicit_tag(o, odr_oid,
64 			&(*p)->schema, ODR_CONTEXT, 3, 1, "schema") &&
65 		odr_implicit_tag(o, z_InternationalString,
66 			&(*p)->elementSetName, ODR_CONTEXT, 4, 1, "elementSetName") &&
67 		odr_implicit_tag(o, z_External,
68 			&(*p)->actionQualifier, ODR_CONTEXT, 5, 1, "actionQualifier") &&
69 		odr_sequence_end(o);
70 }
71 
z_IUOriginPartNotToKeep(ODR o,Z_IUOriginPartNotToKeep ** p,int opt,const char * name)72 int z_IUOriginPartNotToKeep(ODR o, Z_IUOriginPartNotToKeep **p, int opt, const char *name)
73 {
74 	return z_IUSuppliedRecords (o, p, opt, name);
75 }
76 
z_IUTargetPart(ODR o,Z_IUTargetPart ** p,int opt,const char * name)77 int z_IUTargetPart(ODR o, Z_IUTargetPart **p, int opt, const char *name)
78 {
79 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
80 		return odr_missing(o, opt, name) && odr_ok (o);
81 	return
82 		odr_implicit_tag(o, odr_integer,
83 			&(*p)->updateStatus, ODR_CONTEXT, 1, 0, "updateStatus") &&
84 		odr_implicit_settag(o, ODR_CONTEXT, 2) &&
85 		(odr_sequence_of(o, (Odr_fun) z_DiagRec, &(*p)->globalDiagnostics,
86 		  &(*p)->num_globalDiagnostics, "globalDiagnostics") || odr_ok(o)) &&
87 		odr_implicit_settag(o, ODR_CONTEXT, 3) &&
88 		odr_sequence_of(o, (Odr_fun) z_IUTaskPackageRecordStructure, &(*p)->taskPackageRecords,
89 		  &(*p)->num_taskPackageRecords, "taskPackageRecords") &&
90 		odr_sequence_end(o);
91 }
92 
z_IUSuppliedRecordsId(ODR o,Z_IUSuppliedRecordsId ** p,int opt,const char * name)93 int z_IUSuppliedRecordsId(ODR o, Z_IUSuppliedRecordsId **p, int opt, const char *name)
94 {
95 	static Odr_arm arm[] = {
96 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IUSuppliedRecordsId_timeStamp,
97 		(Odr_fun) odr_generalizedtime, "timeStamp"},
98 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IUSuppliedRecordsId_versionNumber,
99 		(Odr_fun) z_InternationalString, "versionNumber"},
100 		{ODR_IMPLICIT, ODR_CONTEXT, 3, Z_IUSuppliedRecordsId_previousVersion,
101 		(Odr_fun) z_External, "previousVersion"},
102 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
103 	};
104 	if (!odr_initmember(o, p, sizeof(**p)))
105 		return odr_missing(o, opt, name);
106 	if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
107 		return 1;
108 	if (o->direction == ODR_DECODE)
109 		*p = 0;
110 	return odr_missing(o, opt, name);
111 }
112 
z_IUSuppliedRecords_elem(ODR o,Z_IUSuppliedRecords_elem ** p,int opt,const char * name)113 int z_IUSuppliedRecords_elem(ODR o, Z_IUSuppliedRecords_elem **p, int opt, const char *name)
114 {
115 	static Odr_arm arm[] = {
116 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IUSuppliedRecords_elem_number,
117 		(Odr_fun) odr_integer, "number"},
118 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IUSuppliedRecords_elem_string,
119 		(Odr_fun) z_InternationalString, "string"},
120 		{ODR_IMPLICIT, ODR_CONTEXT, 3, Z_IUSuppliedRecords_elem_opaque,
121 		(Odr_fun) odr_octetstring, "opaque"},
122 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
123 	};
124 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
125 		return odr_missing(o, opt, name) && odr_ok (o);
126 	return
127 		((odr_constructed_begin(o, &(*p)->u, ODR_CONTEXT, 1, "recordId") &&
128 		odr_choice(o, arm, &(*p)->u, &(*p)->which, 0) &&
129 		odr_constructed_end(o)) || odr_ok(o)) &&
130 		odr_explicit_tag(o, z_IUSuppliedRecordsId,
131 			&(*p)->supplementalId, ODR_CONTEXT, 2, 1, "supplementalId") &&
132 		odr_implicit_tag(o, z_IUCorrelationInfo,
133 			&(*p)->correlationInfo, ODR_CONTEXT, 3, 1, "correlationInfo") &&
134 		odr_implicit_tag(o, z_External,
135 			&(*p)->record, ODR_CONTEXT, 4, 0, "record") &&
136 		odr_sequence_end(o);
137 }
138 
z_IUSuppliedRecords(ODR o,Z_IUSuppliedRecords ** p,int opt,const char * name)139 int z_IUSuppliedRecords(ODR o, Z_IUSuppliedRecords **p, int opt, const char *name)
140 {
141 	if (!odr_initmember(o, p, sizeof(**p)))
142 		return odr_missing(o, opt, name);
143 	if (odr_sequence_of(o, (Odr_fun) z_IUSuppliedRecords_elem, &(*p)->elements,
144 		&(*p)->num, name))
145 		return 1;
146 	if (o->direction == ODR_DECODE)
147 		*p = 0;
148 	return odr_missing(o, opt, name);
149 }
150 
z_IUCorrelationInfo(ODR o,Z_IUCorrelationInfo ** p,int opt,const char * name)151 int z_IUCorrelationInfo(ODR o, Z_IUCorrelationInfo **p, int opt, const char *name)
152 {
153 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
154 		return odr_missing(o, opt, name) && odr_ok (o);
155 	return
156 		odr_implicit_tag(o, z_InternationalString,
157 			&(*p)->note, ODR_CONTEXT, 1, 1, "note") &&
158 		odr_implicit_tag(o, odr_integer,
159 			&(*p)->id, ODR_CONTEXT, 2, 1, "id") &&
160 		odr_sequence_end(o);
161 }
162 
z_IUTaskPackageRecordStructureSurrogateDiagnostics(ODR o,Z_IUTaskPackageRecordStructureSurrogateDiagnostics ** p,int opt,const char * name)163 int z_IUTaskPackageRecordStructureSurrogateDiagnostics(ODR o, Z_IUTaskPackageRecordStructureSurrogateDiagnostics **p, int opt, const char *name)
164 {
165 	if (!odr_initmember(o, p, sizeof(**p)))
166 		return odr_missing(o, opt, name);
167 	if (odr_sequence_of(o, (Odr_fun) z_DiagRec, &(*p)->elements,
168 		&(*p)->num, name))
169 		return 1;
170 	if (o->direction == ODR_DECODE)
171 		*p = 0;
172 	return odr_missing(o, opt, name);
173 }
174 
z_IUTaskPackageRecordStructure(ODR o,Z_IUTaskPackageRecordStructure ** p,int opt,const char * name)175 int z_IUTaskPackageRecordStructure(ODR o, Z_IUTaskPackageRecordStructure **p, int opt, const char *name)
176 {
177 	static Odr_arm arm[] = {
178 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IUTaskPackageRecordStructure_record,
179 		(Odr_fun) z_External, "record"},
180 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IUTaskPackageRecordStructure_surrogateDiagnostics,
181 		(Odr_fun) z_IUTaskPackageRecordStructureSurrogateDiagnostics, "surrogateDiagnostics"},
182 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
183 	};
184 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
185 		return odr_missing(o, opt, name) && odr_ok (o);
186 	return
187 		((odr_constructed_begin(o, &(*p)->u, ODR_CONTEXT, 1, "recordOrSurDiag") &&
188 		odr_choice(o, arm, &(*p)->u, &(*p)->which, 0) &&
189 		odr_constructed_end(o)) || odr_ok(o)) &&
190 		odr_implicit_tag(o, z_IUCorrelationInfo,
191 			&(*p)->correlationInfo, ODR_CONTEXT, 2, 1, "correlationInfo") &&
192 		odr_implicit_tag(o, odr_integer,
193 			&(*p)->recordStatus, ODR_CONTEXT, 3, 0, "recordStatus") &&
194 		odr_implicit_settag(o, ODR_CONTEXT, 4) &&
195 		(odr_sequence_of(o, (Odr_fun) z_DiagRec, &(*p)->supplementalDiagnostics,
196 		  &(*p)->num_supplementalDiagnostics, "supplementalDiagnostics") || odr_ok(o)) &&
197 		odr_sequence_end(o);
198 }
199