00001 #ifndef __OLBADMIN__ 00002 #define __OLBADMIN__ 00003 /******************************************************************************/ 00004 /* */ 00005 /* X r d O l b A d m i n . h h */ 00006 /* */ 00007 /* (c) 2004 by the Board of Trustees of the Leland Stanford, Jr., University */ 00008 /* All Rights Reserved */ 00009 /* Produced by Andrew Hanushevsky for Stanford University under contract */ 00010 /* DE-AC03-76-SFO0515 with the Department of Energy */ 00011 /******************************************************************************/ 00012 00013 // $Id: XrdOlbAdmin.hh,v 1.7 2007/07/26 15:18:23 ganis Exp $ 00014 00015 #include <stdlib.h> 00016 00017 #include "XrdOuc/XrdOucStream.hh" 00018 #include "XrdSys/XrdSysPthread.hh" 00019 00020 class XrdNetSocket; 00021 00022 class XrdOlbAdmin 00023 { 00024 public: 00025 00026 void Login(int socknum); 00027 00028 static void setSync(XrdSysSemaphore *sync) {SyncUp = sync;} 00029 00030 void *Notes(XrdNetSocket *AdminSock); 00031 00032 void *Start(XrdNetSocket *AdminSock); 00033 00034 XrdOlbAdmin() {Sname = 0; Stype = "Server"; Primary = 0;} 00035 ~XrdOlbAdmin() {if (Sname) free(Sname);} 00036 00037 private: 00038 00039 int do_Login(); 00040 void do_NoStage(); 00041 void do_Resume(); 00042 void do_RmDid(int dotrim=0); 00043 void do_RmDud(int dotrim=0); 00044 void do_Stage(); 00045 void do_Suspend(); 00046 00047 static XrdSysMutex myMutex; 00048 static XrdSysSemaphore *SyncUp; 00049 static int POnline; 00050 XrdOucStream Stream; 00051 const char *Stype; 00052 char *Sname; 00053 int Primary; 00054 }; 00055 #endif
1.7.1