Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

TGo4ComServerQuit.cxx

Go to the documentation of this file.
00001 //-------------------------------------------------------------
00002 //        Go4 Release Package v3.04-01 (build 30401)
00003 //                      28-November-2008
00004 //---------------------------------------------------------------
00005 //   The GSI Online Offline Object Oriented (Go4) Project
00006 //   Experiment Data Processing at EE department, GSI
00007 //---------------------------------------------------------------
00008 //
00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI
00010 //                    Planckstr. 1, 64291 Darmstadt, Germany
00011 //Contact:            http://go4.gsi.de
00012 //----------------------------------------------------------------
00013 //This software can be used under the license agreements as stated
00014 //in Go4License.txt file which is part of the distribution.
00015 //----------------------------------------------------------------
00016 #include "TGo4ComServerQuit.h"
00017 
00018 #include "Riostream.h"
00019 
00020 #include "TGo4Log.h"
00021 #include "TGo4ServerTask.h"
00022 
00023 TGo4ComServerQuit::TGo4ComServerQuit()
00024 :TGo4TaskHandlerCommand("SVQuit","quits the server and the whole application")
00025 {
00026    SetReceiverName("ServerTask"); // sets the receiver name checked by command invoker
00027                                   // receiver name neednt be class name!
00028    fbIsSynchron=kFALSE;
00029    fbIsLocal=kFALSE; // we misuse this old command to send it to analysis server for shutdown
00030    SetProtection(kGo4ComModeAdministrator);
00031 }
00032 
00033 TGo4ComServerQuit::~TGo4ComServerQuit()
00034 {
00035 }
00036 
00037 Int_t TGo4ComServerQuit::ExeCom()
00038 {
00039    TGo4ServerTask* server=dynamic_cast<TGo4ServerTask*>(fxReceiverBase);
00040    if (server!=0)
00041       {
00042          //server->Quit(); // Quit will disconnect clients one by one
00043          server->Shutdown(); // Shutdown will terminate without waiting for clients removed properly
00044          return 0;
00045       }
00046    else
00047       {
00048          TGo4Log::Debug(" !!! ComServerQuit ''%s'': NO RECEIVER ERROR!!!",GetName());
00049          return 1;
00050       }
00051    return -1;
00052 }
00053 
00054 //----------------------------END OF GO4 SOURCE FILE ---------------------

Generated on Fri Nov 28 12:59:06 2008 for Go4-v3.04-1 by  doxygen 1.4.2