Read XML input,
[gnucomo.git] / src / gcm_input / message.h
index c3c9ff1..34c8eb8 100644 (file)
@@ -8,7 +8,7 @@
 ***********************
 **      FILE NAME      : message.h
 **      SYSTEM NAME    : 
-**      VERSION NUMBER : $Revision: 1.5 $
+**      VERSION NUMBER : $Revision: 1.6 $
 **
 **  DESCRIPTION      :  Classes to for handling client messages
 **
 ********************************
 **      ORIGINAL AUTHOR : Arjen Baart - arjen@andromeda.nl
 **      CREATION DATE   : Sep 16, 2002
-**      LAST UPDATE     : Feb 28, 2003
+**      LAST UPDATE     : Apr 28, 2003
 **      MODIFICATIONS   : 
 **************************************************************************/
 
 /*****************************
    $Log: message.h,v $
-   Revision 1.5  2003-03-16 09:42:40  arjen
+   Revision 1.6  2003-04-29 09:16:44  arjen
+   Read XML input,
+   Only cooked log entries for now.
+
+   Revision 1.5  2003/03/16 09:42:40  arjen
    Read IRIX system logs.
 
    Revision 1.4  2002/12/06 22:26:28  arjen
 
 *****************************/
 
-/* static const char *RCSID = "$Id: message.h,v 1.5 2003-03-16 09:42:40 arjen Exp $"; */
+/* static const char *RCSID = "$Id: message.h,v 1.6 2003-04-29 09:16:44 arjen Exp $"; */
 
 #include <iostream>
 #include <list>
 #include <AXE/String.h>
 #include <AXE/date.h>
 
+#include <libxml/parser.h>
+
 #include "database.h"
 
 /*
@@ -135,7 +141,7 @@ public:
 //
 //  RELATIONS      :
 //  SEE ALSO       :
-//  LAST MODIFIED  : Feb 28, 2003
+//  LAST MODIFIED  : Apr 28, 2003
 ///////////////////////////////////////////////////////////////////////////
 */
 
@@ -148,16 +154,22 @@ class client_message
    bool       mail_header;   //  Does the message contain a mail header ?
    bool       gpg_encrypted; //  Is the message encrypted ?
 
+   xmlDocPtr  xmlDom;
+
    double     certainty;     //  How certain are we about the message
    enum
    {
-      UNKNOWN, SYSLOG, SYSLOG_IRIX, ACCESSLOG, ERRORLOG, RPMLIST
+      UNKNOWN, SYSLOG, SYSLOG_IRIX, ACCESSLOG, ERRORLOG, RPMLIST,
+      XML
    }  classification;
 
 
    message_buffer    input;
    gnucomo_database  database;
 
+   int     readXMLinput(String first_line);
+   void    enterXML();
+
 public:
 
    client_message(std::istream *in, gnucomo_database db);