Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TNetFileStager.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/netx:$Id$
0002 // Author: G. Ganis Feb 2011
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TNetFileStager
0013 #define ROOT_TNetFileStager
0014 
0015 //////////////////////////////////////////////////////////////////////////
0016 //                                                                      //
0017 // TNetFileStager                                                       //
0018 //                                                                      //
0019 // TFileStager implementation for a 'rootd' backend.                    //
0020 //                                                                      //
0021 //////////////////////////////////////////////////////////////////////////
0022 
0023 #include "TFileStager.h"
0024 
0025 class TCollection;
0026 class TNetSystem;
0027 
0028 class TNetFileStager : public TFileStager {
0029 
0030 private:
0031    TString        fPrefix; // prefix to prepend to requests
0032    TNetSystem   *fSystem; // instance of the admin interface
0033 
0034    static void    GetPrefix(const char *url, TString &pfx);
0035 
0036 public:
0037    TNetFileStager(const char *stager = "");
0038    virtual ~TNetFileStager();
0039 
0040    Bool_t  IsStaged(const char *path) override;
0041    Int_t   Locate(const char *path, TString &endpath) override;
0042    Bool_t  Matches(const char *s) override;
0043 
0044    Bool_t  IsValid() const override { return fSystem ? kTRUE : kFALSE; }
0045 
0046    void    Print(Option_t *option = "") const override;
0047 
0048    ClassDefOverride(TNetFileStager,0)  // Implementation for a 'rootd' backend
0049 };
0050 
0051 #endif