YAZ 5.35.1
item-req.c
Go to the documentation of this file.
1
6#if HAVE_CONFIG_H
7#include <config.h>
8#endif
9
10#include <yaz/item-req.h>
11
12int ill_ItemRequest(ODR o, ILL_ItemRequest **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
18 &(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&
20 &(*p)->transaction_id, ODR_CONTEXT, 1, 1, "transaction_id") &&
22 &(*p)->service_date_time, ODR_CONTEXT, 2, 1, "service_date_time") &&
24 &(*p)->requester_id, ODR_CONTEXT, 3, 1, "requester_id") &&
26 &(*p)->responder_id, ODR_CONTEXT, 4, 1, "responder_id") &&
28 &(*p)->transaction_type, ODR_CONTEXT, 5, 0, "transaction_type") &&
30 &(*p)->delivery_address, ODR_CONTEXT, 6, 1, "delivery_address") &&
31 ill_Delivery_Service(o, &(*p)->delivery_service, 1, "delivery_service") &&
33 &(*p)->billing_address, ODR_CONTEXT, 8, 1, "billing_address") &&
35 (odr_sequence_of(o, (Odr_fun) ill_Service_Type, &(*p)->iLL_service_type,
36 &(*p)->num_iLL_service_type, "iLL_service_type") || odr_ok(o)) &&
38 &(*p)->responder_specific_service, ODR_CONTEXT, 10, 1, "responder_specific_service") &&
40 &(*p)->requester_optional_messages, ODR_CONTEXT, 11, 1, "requester_optional_messages") &&
42 &(*p)->search_type, ODR_CONTEXT, 12, 1, "search_type") &&
44 (odr_sequence_of(o, (Odr_fun) ill_Supply_Medium_Info_Type, &(*p)->supply_medium_info_type,
45 &(*p)->num_supply_medium_info_type, "supply_medium_info_type") || odr_ok(o)) &&
47 &(*p)->place_on_hold, ODR_CONTEXT, 14, 0, "place_on_hold") &&
49 &(*p)->client_id, ODR_CONTEXT, 15, 1, "client_id") &&
51 &(*p)->item_id, ODR_CONTEXT, 16, 1, "item_id") &&
53 &(*p)->supplemental_item_description, ODR_CONTEXT, 17, 1, "supplemental_item_description") &&
55 &(*p)->cost_info_type, ODR_CONTEXT, 18, 1, "cost_info_type") &&
57 &(*p)->copyright_compliance, ODR_CONTEXT, 19, 1, "copyright_compliance") &&
59 &(*p)->third_party_info_type, ODR_CONTEXT, 20, 1, "third_party_info_type") &&
61 &(*p)->retry_flag, ODR_CONTEXT, 21, 0, "retry_flag") &&
63 &(*p)->forward_flag, ODR_CONTEXT, 22, 0, "forward_flag") &&
65 &(*p)->requester_note, ODR_CONTEXT, 46, 1, "requester_note") &&
67 &(*p)->forward_note, ODR_CONTEXT, 47, 1, "forward_note") &&
69 (odr_sequence_of(o, (Odr_fun) ill_Extension, &(*p)->iLL_request_extensions,
70 &(*p)->num_iLL_request_extensions, "iLL_request_extensions") || odr_ok(o)) &&
72}
int ill_Third_Party_Info_Type(ODR o, ILL_Third_Party_Info_Type **p, int opt, const char *name)
Definition ill-core.c:1657
int ill_Service_Type(ODR o, ILL_Service_Type **p, int opt, const char *name)
Definition ill-core.c:1183
int ill_Delivery_Address(ODR o, ILL_Delivery_Address **p, int opt, const char *name)
Definition ill-core.c:989
int ill_Client_Id(ODR o, ILL_Client_Id **p, int opt, const char *name)
Definition ill-core.c:894
int ill_Cost_Info_Type(ODR o, ILL_Cost_Info_Type **p, int opt, const char *name)
Definition ill-core.c:924
int ill_Transaction_Type(ODR o, ILL_Transaction_Type **p, int opt, const char *name)
Definition ill-core.c:1707
int ill_Transaction_Id(ODR o, ILL_Transaction_Id **p, int opt, const char *name)
Definition ill-core.c:1681
int ill_Search_Type(ODR o, ILL_Search_Type **p, int opt, const char *name)
Definition ill-core.c:1459
int ill_Supply_Medium_Info_Type(ODR o, ILL_Supply_Medium_Info_Type **p, int opt, const char *name)
Definition ill-core.c:1616
int ill_System_Id(ODR o, ILL_System_Id **p, int opt, const char *name)
Definition ill-core.c:1645
int ill_Service_Date_Time(ODR o, ILL_Service_Date_Time **p, int opt, const char *name)
Definition ill-core.c:1530
int ill_Item_Id(ODR o, ILL_Item_Id **p, int opt, const char *name)
Definition ill-core.c:1221
int ill_Extension(ODR o, ILL_Extension **p, int opt, const char *name)
Definition ill-core.c:1112
int ill_Delivery_Service(ODR o, ILL_Delivery_Service **p, int opt, const char *name)
Definition ill-core.c:1013
int ill_String(ODR o, ILL_String **p, int opt, const char *name)
Definition ill-core.c:1188
int ill_Supplemental_Item_Description(ODR o, ILL_Supplemental_Item_Description **p, int opt, const char *name)
Definition ill-core.c:1571
int ill_Requester_Optional_Messages_Type(ODR o, ILL_Requester_Optional_Messages_Type **p, int opt, const char *name)
Definition ill-core.c:1412
int ill_Place_On_Hold_Type(ODR o, ILL_Place_On_Hold_Type **p, int opt, const char *name)
Definition ill-core.c:1343
int opt
Definition initopt.c:19
char * name
Definition initopt.c:18
int ill_ItemRequest(ODR o, ILL_ItemRequest **p, int opt, const char *name)
Definition item-req.c:12
ASN.1 Module Z39.50-extendedService-ItemOrder-ItemRequest-1.
#define odr_ok(o)
Definition odr.h:215
#define odr_explicit_tag(o, t, p, cl, tg, opt, name)
Definition odr.h:195
#define ODR_CONTEXT
Definition odr.h:67
int(* Odr_fun)(ODR, char **, int, const char *)
Definition odr.h:135
#define odr_implicit_tag(o, t, p, cl, tg, opt, name)
Definition odr.h:192
int odr_bool(ODR o, Odr_bool **p, int opt, const char *name)
Definition odr_bool.c:21
int odr_integer(ODR o, Odr_int **p, int opt, const char *name)
Definition odr_int.c:19
int odr_sequence_of(ODR o, Odr_fun type, void *p, int *num, const char *name)
Definition odr_seq.c:134
int odr_sequence_end(ODR o)
Definition odr_seq.c:61
int odr_sequence_begin(ODR o, void *p, int size, const char *name)
Definition odr_seq.c:15
int odr_implicit_settag(ODR o, int zclass, int tag)
Definition odr_tag.c:32
int odr_external(ODR o, Odr_external **p, int opt, const char *name)
Definition odr_use.c:15
int odr_missing(ODR o, int opt, const char *name)
Definition odr_util.c:82
Definition odr.h:125