1 /** \file zes-psched.c
2     \brief ASN.1 Module ESFormat-PeriodicQuerySchedule
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-psched.h>
11 
z_PQSPeriodicQueryScheduleEsRequest(ODR o,Z_PQSPeriodicQueryScheduleEsRequest ** p,int opt,const char * name)12 int z_PQSPeriodicQueryScheduleEsRequest(ODR o, Z_PQSPeriodicQueryScheduleEsRequest **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_PQSOriginPartToKeep,
18 			&(*p)->toKeep, ODR_CONTEXT, 1, 0, "toKeep") &&
19 		odr_explicit_tag(o, z_PQSOriginPartNotToKeep,
20 			&(*p)->notToKeep, ODR_CONTEXT, 2, 0, "notToKeep") &&
21 		odr_sequence_end(o);
22 }
23 
z_PQSPeriodicQueryScheduleTaskPackage(ODR o,Z_PQSPeriodicQueryScheduleTaskPackage ** p,int opt,const char * name)24 int z_PQSPeriodicQueryScheduleTaskPackage(ODR o, Z_PQSPeriodicQueryScheduleTaskPackage **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_PQSOriginPartToKeep,
30 			&(*p)->originPart, ODR_CONTEXT, 1, 0, "originPart") &&
31 		odr_explicit_tag(o, z_PQSTargetPart,
32 			&(*p)->targetPart, ODR_CONTEXT, 2, 0, "targetPart") &&
33 		odr_sequence_end(o);
34 }
35 
z_PQSPeriodicQuerySchedule(ODR o,Z_PQSPeriodicQuerySchedule ** p,int opt,const char * name)36 int z_PQSPeriodicQuerySchedule(ODR o, Z_PQSPeriodicQuerySchedule **p, int opt, const char *name)
37 {
38 	static Odr_arm arm[] = {
39 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PQSPeriodicQuerySchedule_esRequest,
40 		(Odr_fun) z_PQSPeriodicQueryScheduleEsRequest, "esRequest"},
41 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PQSPeriodicQuerySchedule_taskPackage,
42 		(Odr_fun) z_PQSPeriodicQueryScheduleTaskPackage, "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_PQSOriginPartToKeep(ODR o,Z_PQSOriginPartToKeep ** p,int opt,const char * name)54 int z_PQSOriginPartToKeep(ODR o, Z_PQSOriginPartToKeep **p, int opt, const char *name)
55 {
56 	static Odr_arm arm[] = {
57 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PQSOriginPartToKeep_packageName,
58 		(Odr_fun) z_InternationalString, "packageName"},
59 		{ODR_EXPLICIT, ODR_CONTEXT, 2, Z_PQSOriginPartToKeep_exportPackage,
60 		(Odr_fun) z_ESExportSpecification, "exportPackage"},
61 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
62 	};
63 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
64 		return odr_missing(o, opt, name) && odr_ok (o);
65 	return
66 		odr_implicit_tag(o, odr_bool,
67 			&(*p)->activeFlag, ODR_CONTEXT, 1, 0, "activeFlag") &&
68 		odr_implicit_settag(o, ODR_CONTEXT, 2) &&
69 		(odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->databaseNames,
70 		  &(*p)->num_databaseNames, "databaseNames") || odr_ok(o)) &&
71 		odr_implicit_tag(o, odr_integer,
72 			&(*p)->resultSetDisposition, ODR_CONTEXT, 3, 1, "resultSetDisposition") &&
73 		odr_explicit_tag(o, z_ESDestination,
74 			&(*p)->alertDestination, ODR_CONTEXT, 4, 1, "alertDestination") &&
75 		((odr_constructed_begin(o, &(*p)->u, ODR_CONTEXT, 5, "exportParameters") &&
76 		odr_choice(o, arm, &(*p)->u, &(*p)->which, 0) &&
77 		odr_constructed_end(o)) || odr_ok(o)) &&
78 		odr_sequence_end(o);
79 }
80 
z_PQSOriginPartNotToKeep(ODR o,Z_PQSOriginPartNotToKeep ** p,int opt,const char * name)81 int z_PQSOriginPartNotToKeep(ODR o, Z_PQSOriginPartNotToKeep **p, int opt, const char *name)
82 {
83 	static Odr_arm arm[] = {
84 		{ODR_EXPLICIT, ODR_CONTEXT, 1, Z_PQSOriginPartNotToKeep_actualQuery,
85 		(Odr_fun) z_Query, "actualQuery"},
86 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PQSOriginPartNotToKeep_packageName,
87 		(Odr_fun) z_InternationalString, "packageName"},
88 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
89 	};
90 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
91 		return odr_missing(o, opt, name) && odr_ok (o);
92 	return
93 		((odr_constructed_begin(o, &(*p)->u, ODR_CONTEXT, 1, "querySpec") &&
94 		odr_choice(o, arm, &(*p)->u, &(*p)->which, 0) &&
95 		odr_constructed_end(o)) || odr_ok(o)) &&
96 		odr_explicit_tag(o, z_PQSPeriod,
97 			&(*p)->originSuggestedPeriod, ODR_CONTEXT, 2, 1, "originSuggestedPeriod") &&
98 		odr_implicit_tag(o, odr_generalizedtime,
99 			&(*p)->expiration, ODR_CONTEXT, 3, 1, "expiration") &&
100 		odr_implicit_tag(o, z_InternationalString,
101 			&(*p)->resultSetPackage, ODR_CONTEXT, 4, 1, "resultSetPackage") &&
102 		odr_sequence_end(o);
103 }
104 
z_PQSTargetPart(ODR o,Z_PQSTargetPart ** p,int opt,const char * name)105 int z_PQSTargetPart(ODR o, Z_PQSTargetPart **p, int opt, const char *name)
106 {
107 	if (!odr_sequence_begin(o, p, sizeof(**p), name))
108 		return odr_missing(o, opt, name) && odr_ok (o);
109 	return
110 		odr_explicit_tag(o, z_Query,
111 			&(*p)->actualQuery, ODR_CONTEXT, 1, 0, "actualQuery") &&
112 		odr_explicit_tag(o, z_PQSPeriod,
113 			&(*p)->targetStatedPeriod, ODR_CONTEXT, 2, 0, "targetStatedPeriod") &&
114 		odr_implicit_tag(o, odr_generalizedtime,
115 			&(*p)->expiration, ODR_CONTEXT, 3, 1, "expiration") &&
116 		odr_implicit_tag(o, z_InternationalString,
117 			&(*p)->resultSetPackage, ODR_CONTEXT, 4, 1, "resultSetPackage") &&
118 		odr_implicit_tag(o, odr_generalizedtime,
119 			&(*p)->lastQueryTime, ODR_CONTEXT, 5, 0, "lastQueryTime") &&
120 		odr_implicit_tag(o, odr_integer,
121 			&(*p)->lastResultNumber, ODR_CONTEXT, 6, 0, "lastResultNumber") &&
122 		odr_implicit_tag(o, odr_integer,
123 			&(*p)->numberSinceModify, ODR_CONTEXT, 7, 1, "numberSinceModify") &&
124 		odr_sequence_end(o);
125 }
126 
z_PQSPeriod(ODR o,Z_PQSPeriod ** p,int opt,const char * name)127 int z_PQSPeriod(ODR o, Z_PQSPeriod **p, int opt, const char *name)
128 {
129 	static Odr_arm arm[] = {
130 		{ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PQSPeriod_unit,
131 		(Odr_fun) z_IntUnit, "unit"},
132 		{ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PQSPeriod_businessDaily,
133 		(Odr_fun) odr_null, "businessDaily"},
134 		{ODR_IMPLICIT, ODR_CONTEXT, 3, Z_PQSPeriod_continuous,
135 		(Odr_fun) odr_null, "continuous"},
136 		{ODR_IMPLICIT, ODR_CONTEXT, 4, Z_PQSPeriod_other,
137 		(Odr_fun) z_InternationalString, "other"},
138 		{-1, -1, -1, -1, (Odr_fun) 0, 0}
139 	};
140 	if (!odr_initmember(o, p, sizeof(**p)))
141 		return odr_missing(o, opt, name);
142 	if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
143 		return 1;
144 	if (o->direction == ODR_DECODE)
145 		*p = 0;
146 	return odr_missing(o, opt, name);
147 }
148