2 * Copyright (c) 2004, Index Data.
3 * See the file LICENSE for details.
5 * $Id: zlint.h,v 1.1 2004-03-25 23:14:07 adam Exp $
8 #include <yaz++/z-assoc.h>
19 class Zlint : public Yaz_Z_Assoc {
21 Zlint(IYaz_PDU_Observable *the_PDU_Observable);
23 void add_test(Zlint_test *i);
24 void set_host(const char *cp);
25 int initResponseGetVersion(Z_InitResponse *init);
26 Z_ReferenceId *mk_refid(const char *buf, int len);
27 void msg_check_for(const char *fmt, ...);
29 void msg_check_fail(const char *fmt, ...);
30 void msg_check_info(const char *fmt, ...);
31 void msg_check_notapp();
32 void getDatabase(char ***db, int *num);
37 void recv_GDU(Z_GDU *apdu, int len);
38 IYaz_PDU_Observable *m_PDU_Observable;
39 IYaz_PDU_Observer *sessionNotify(
40 IYaz_PDU_Observable *the_PDU_Observable, int fd);
45 void close_goto_next();
50 virtual Zlint_code init(Zlint *z) = 0;
51 virtual Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu) = 0;
52 virtual Zlint_code recv_fail(Zlint *z, int reason) = 0;
55 class Zlint_test_simple : public Zlint_test {
57 virtual Zlint_code init(Zlint *z) = 0;
58 virtual Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu) = 0;
59 virtual Zlint_code recv_fail(Zlint *z, int reason);
62 class Zlint_test_init_01 : public Zlint_test_simple {
65 virtual ~Zlint_test_init_01();
66 Zlint_code init(Zlint *z);
67 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
70 class Zlint_test_init_02 : public Zlint_test_simple {
73 virtual ~Zlint_test_init_02();
74 Zlint_code init(Zlint *z);
75 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
78 class Zlint_test_init_03 : public Zlint_test_simple {
81 virtual ~Zlint_test_init_03();
82 Zlint_code init(Zlint *z);
83 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
86 class Zlint_test_init_04 : public Zlint_test_simple {
89 virtual ~Zlint_test_init_04();
90 Zlint_code init(Zlint *z);
91 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
94 class Zlint_test_init_05 : public Zlint_test_simple {
95 int m_init_response_no;
98 virtual ~Zlint_test_init_05();
99 Zlint_code init(Zlint *z);
100 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
103 class Zlint_test_init_06 : public Zlint_test_simple {
105 Zlint_test_init_06();
106 virtual ~Zlint_test_init_06();
107 Zlint_code init(Zlint *z);
108 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
111 class Zlint_test_init_07 : public Zlint_test_simple {
113 Zlint_test_init_07();
114 virtual ~Zlint_test_init_07();
115 Zlint_code init(Zlint *z);
116 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
119 class Zlint_test_init_08 : public Zlint_test {
122 Zlint_test_init_08();
123 virtual ~Zlint_test_init_08();
124 Zlint_code init(Zlint *z);
125 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
126 Zlint_code recv_fail(Zlint *z, int reason);
129 class Zlint_test_search_01 : public Zlint_test {
131 int m_got_result_set;
132 int m_record_syntax_no;
134 Zlint_code sendTest(Zlint *z);
136 Zlint_test_search_01();
137 virtual ~Zlint_test_search_01();
138 Zlint_code init(Zlint *z);
139 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
140 Zlint_code recv_fail(Zlint *z, int reason);
143 class Zlint_test_scan_01 : public Zlint_test {
145 Zlint_code sendTest(Zlint *z);
147 Zlint_test_scan_01();
148 virtual ~Zlint_test_scan_01();
149 Zlint_code init(Zlint *z);
150 Zlint_code recv_gdu(Zlint *z, Z_GDU *gdu);
151 Zlint_code recv_fail(Zlint *z, int reason);