TClSession.h

Go to the documentation of this file.
00001 // @(#)root/clarens:$Id: TClSession.h 20882 2007-11-19 11:31:26Z rdm $
00002 // Author: Maarten Ballintijn    25/10/2004
00003 
00004 /*************************************************************************
00005  * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers.               *
00006  * All rights reserved.                                                  *
00007  *                                                                       *
00008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00010  *************************************************************************/
00011 
00012 #ifndef ROOT_TClSession
00013 #define ROOT_TClSession
00014 
00015 //////////////////////////////////////////////////////////////////////////
00016 //                                                                      //
00017 // TClSession                                                           //
00018 //                                                                      //
00019 //                                                                      //
00020 //////////////////////////////////////////////////////////////////////////
00021 
00022 #if !defined(__CINT__)
00023 #include "xmlrpc.h"
00024 #include "xmlrpc_client.h"
00025 #else
00026 struct xmlrpc_server_info;
00027 #endif
00028 
00029 #ifndef ROOT_TObject
00030 #include "TObject.h"
00031 #endif
00032 
00033 #ifndef ROOT_TUrl
00034 #include "TUrl.h"
00035 #endif
00036 
00037 
00038 class TUrl;
00039 
00040 
00041 class TClSession : public TObject {
00042 private:
00043    TUrl                 fUrl;          //server we are connected to
00044    TString              fUser;         //SHA1 string
00045    TString              fPassword;     //SHA1 string
00046    xmlrpc_server_info  *fServerInfo;   //per server data
00047    void                *fServerPubRSA; //(X509*)
00048 
00049    // single client certificate for the moment
00050    static void         *fgPrivRSA;
00051    static void         *fgPubRSA;
00052    static TString       fgUserCert;
00053    static Bool_t        fgInitialized;
00054 
00055    TClSession(const Char_t *url, const Char_t *user, const Char_t *pw,
00056               xmlrpc_server_info *info, void *serverPubRSA);
00057 
00058    static Bool_t        InitAuthentication();
00059 
00060 public:
00061    virtual ~TClSession() { }
00062 
00063    xmlrpc_server_info  *GetServerInfo() {return fServerInfo;}
00064    const Char_t        *GetServer() {return fUrl.GetUrl();}
00065 
00066    static TClSession   *Create(const Char_t *url);
00067 
00068    ClassDef(TClSession,0);  // Clarens Session
00069 };
00070 
00071 #endif

Generated on Tue Jul 5 14:26:41 2011 for ROOT_528-00b_version by  doxygen 1.5.1