Remove class qualifiers in method definitions. Breaks gcc 4.1.
[yazpp-moved-to-github.git] / include / yaz++ / z-server.h
index 10d7523..738701c 100644 (file)
 /*
- * Copyright (c) 2000-2001, Index Data.
+ * Copyright (c) 2000-2005, Index Data.
  * See the file LICENSE for details.
  * 
- * $Id: z-server.h,v 1.1 2002-10-09 12:50:26 adam Exp $
+ * $Id: z-server.h,v 1.10 2006-03-28 19:51:38 adam Exp $
  */
 
 #include <yaz++/z-assoc.h>
-#if HAVE_YAZ_URSULA_H
-#include <yaz/zes-ursula.h>
-#endif
 
-class Yaz_Z_Server;
+namespace yazpp_1 {
 
-class YAZ_EXPORT Yaz_Z_ServerUtility {
+class Z_Server;
+
+class YAZ_EXPORT Z_ServerUtility {
  public:
     void create_databaseRecord (ODR odr, Z_NamePlusRecord *rec,
-                               const char *dbname, int format,
-                               const void *buf, int len);
+                                const char *dbname, int format,
+                                const void *buf, int len);
     void create_surrogateDiagnostics(ODR odr, Z_NamePlusRecord *rec,
-                                    const char *dbname, int error,
-                                    char *const addinfo);
+                                     const char *dbname, int error,
+                                     char *const addinfo);
     
     Z_Records *create_nonSurrogateDiagnostics (ODR odr, int error,
-                                              const char *addinfo);
+                                               const char *addinfo);
 
-    void Yaz_Z_ServerUtility::create_diagnostics (
+    void create_diagnostics (
         ODR odr, int error, const char *addinfo,
         Z_DiagRec ***dreca, int *num);
-};
 
-class YAZ_EXPORT IYaz_Server_Facility {
- public:
-    virtual int init(Yaz_Z_Server *server,
-                    Z_InitRequest *initRequest,
-                    Z_InitResponse *initResponse) = 0;
-    virtual int recv(Yaz_Z_Server *server, Z_APDU *apdu) = 0;
+    virtual ~Z_ServerUtility() = 0;
 };
 
-
-#if HAVE_YAZ_URSULA_H
-class YAZ_EXPORT Yaz_Facility_Ursula : public IYaz_Server_Facility {
+class YAZ_EXPORT IServer_Facility {
  public:
-//    virtual void ursula_service (Z_ExtendedServicesRequest *req,
-//                              Z_UrsPDU *u,
-//                              Z_ExtendedServicesResponse *res) = 0;
-    virtual void ursula_service (Z_ExtendedServicesRequest *req,
-                        Z_UrsPDU *u_req,
-                        Z_ExtendedServicesResponse *res,
-                        Z_UrsPDU *u_res) =0;
-
-    int init(Yaz_Z_Server *server,
-            Z_InitRequest *initRequest,
-            Z_InitResponse *initResponse);
-    int recv(Yaz_Z_Server *server, Z_APDU *apdu);
+    virtual int init(Z_Server *server,
+                     Z_InitRequest *initRequest,
+                     Z_InitResponse *initResponse) = 0;
+    virtual int recv(Z_Server *server, Z_APDU *apdu) = 0;
+
+    virtual ~IServer_Facility() = 0;
 };
-#endif
 
-class YAZ_EXPORT Yaz_Facility_ILL : public IYaz_Server_Facility {
+class YAZ_EXPORT Yaz_Facility_ILL : public IServer_Facility {
  public:
     virtual void ill_service (Z_ExtendedServicesRequest *req,
-                             Z_ItemOrder *io,
-                             Z_ExtendedServicesResponse *res) = 0;
+                              Z_ItemOrder *io,
+                              Z_ExtendedServicesResponse *res) = 0;
 
-    int init(Yaz_Z_Server *server,
-            Z_InitRequest *initRequest,
-            Z_InitResponse *initResponse);
-    int recv(Yaz_Z_Server *server, Z_APDU *apdu);
+    int init(Z_Server *server,
+             Z_InitRequest *initRequest,
+             Z_InitResponse *initResponse);
+    int recv(Z_Server *server, Z_APDU *apdu);
 };
 
-class YAZ_EXPORT Yaz_Facility_Update : public IYaz_Server_Facility {
+class YAZ_EXPORT Yaz_Facility_Update : public IServer_Facility {
  public:
     virtual void update_service (Z_ExtendedServicesRequest *req,
-                                Z_IUUpdate *io,
-                                Z_ExtendedServicesResponse *res) = 0;
+                                 Z_IUUpdate *io,
+                                 Z_ExtendedServicesResponse *res) = 0;
 
     virtual void update_service0 (Z_ExtendedServicesRequest *req,
-                                Z_IU0Update *io,
-                                Z_ExtendedServicesResponse *res) = 0;
+                                 Z_IU0Update *io,
+                                 Z_ExtendedServicesResponse *res) = 0;
 
-    int init(Yaz_Z_Server *server,
-            Z_InitRequest *initRequest,
-            Z_InitResponse *initResponse);
-    int recv(Yaz_Z_Server *server, Z_APDU *apdu);
+    int init(Z_Server *server,
+             Z_InitRequest *initRequest,
+             Z_InitResponse *initResponse);
+    int recv(Z_Server *server, Z_APDU *apdu);
 };
 
 
-class YAZ_EXPORT Yaz_Facility_Retrieval : public IYaz_Server_Facility,
-    public Yaz_Z_ServerUtility {
+class YAZ_EXPORT Yaz_Facility_Retrieval : public IServer_Facility,
+    public Z_ServerUtility {
  public:
 
     virtual int sr_init (Z_InitRequest *initRequest,
-                        Z_InitResponse *initResponse) = 0;
+                         Z_InitResponse *initResponse) = 0;
     virtual void sr_search (Z_SearchRequest *searchRequest,
-                           Z_SearchResponse *searchResponse) = 0;
+                            Z_SearchResponse *searchResponse) = 0;
     virtual void sr_present (Z_PresentRequest *presentRequest,
-                            Z_PresentResponse *presentResponse) = 0;
+                             Z_PresentResponse *presentResponse) = 0;
     virtual void sr_record (const char *resultSetName,
-                           int position,
-                           int *format,
-                               Z_RecordComposition *comp,
-                               Z_NamePlusRecord *namePlusRecord,
-                               Z_Records *diagnostics) = 0;
-    int init(Yaz_Z_Server *server,
-            Z_InitRequest *initRequest,
-            Z_InitResponse *initResponse);
-    int recv(Yaz_Z_Server *server, Z_APDU *apdu);
+                            int position,
+                            int *format,
+                                Z_RecordComposition *comp,
+                                Z_NamePlusRecord *namePlusRecord,
+                                Z_Records *diagnostics) = 0;
+    int init(Z_Server *server,
+             Z_InitRequest *initRequest,
+             Z_InitResponse *initResponse);
+    int recv(Z_Server *server, Z_APDU *apdu);
 
     ODR odr_encode();
     ODR odr_decode();
  private:
-    Z_Records *pack_records (Yaz_Z_Server *s,
-                            const char *resultSetName,
-                            int start, int num,
-                            Z_RecordComposition *comp,
-                            int *next, int *pres,
-                            int *oid);
-
-    void fetch_via_piggyback (Yaz_Z_Server *s,
-                             Z_SearchRequest *searchRequest,
-                             Z_SearchResponse *searchResponse);
-    void fetch_via_present (Yaz_Z_Server *s,
-                           Z_PresentRequest *req, Z_PresentResponse *res);
+    Z_Records *pack_records (Z_Server *s,
+                             const char *resultSetName,
+                             int start, int num,
+                             Z_RecordComposition *comp,
+                             int *next, int *pres,
+                             int *oid);
+
+    void fetch_via_piggyback (Z_Server *s,
+                              Z_SearchRequest *searchRequest,
+                              Z_SearchResponse *searchResponse);
+    void fetch_via_present (Z_Server *s,
+                            Z_PresentRequest *req, Z_PresentResponse *res);
 
     int m_preferredMessageSize;
     int m_maximumRecordSize;
@@ -128,29 +112,39 @@ class YAZ_EXPORT Yaz_Facility_Retrieval : public IYaz_Server_Facility,
     ODR m_odr_decode;
 };
 
-class YAZ_EXPORT Yaz_Z_Server_Facility_Info {
-    friend class Yaz_Z_Server;
-    IYaz_Server_Facility *m_facility;
+class YAZ_EXPORT Z_Server_Facility_Info {
+    friend class Z_Server;
+    IServer_Facility *m_facility;
     char *m_name;
-    Yaz_Z_Server_Facility_Info *m_next;
+    Z_Server_Facility_Info *m_next;
 };
 
 
 
-class YAZ_EXPORT Yaz_Z_Server : public Yaz_Z_Assoc {
+class YAZ_EXPORT Z_Server : public Z_Assoc {
 public:
-    Yaz_Z_Server(IYaz_PDU_Observable *the_PDU_Observable);
-    virtual ~Yaz_Z_Server();
-    virtual void recv_Z_PDU(Z_APDU *apdu);
-    void facility_add(IYaz_Server_Facility *facility, const char *name);
+    Z_Server(IPDU_Observable *the_PDU_Observable);
+    virtual ~Z_Server();
+    void recv_Z_PDU(Z_APDU *apdu, int len);
+    virtual void recv_GDU(Z_GDU *apdu, int len);
+    void facility_add(IServer_Facility *facility, const char *name);
     void facility_reset ();
 
 
  private:
-    Yaz_Z_Server_Facility_Info *m_facilities;
+    Z_Server_Facility_Info *m_facilities;
 };
 
 class YAZ_EXPORT Yaz_USMARC {
  public:
-    const char *get_record(int position);
+    const char *get_record(size_t position);
 };
+};
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+