00001 #ifndef __FRMMIGRATE__ 00002 #define __FRMMIGRATE__ 00003 /******************************************************************************/ 00004 /* */ 00005 /* X r d F r m M i g r a t e . h h */ 00006 /* */ 00007 /* (c) 2010 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-AC02-76-SFO0515 with the Department of Energy */ 00011 /******************************************************************************/ 00012 00013 // $Id: XrdFrmMigrate.hh 34000 2010-06-21 06:49:56Z ganis $ 00014 00015 #include <time.h> 00016 #include <sys/types.h> 00017 00018 #include "XrdOuc/XrdOucHash.hh" 00019 00020 class XrdFrmFileset; 00021 class XrdFrmXfrQueue; 00022 class XrdOucTList; 00023 00024 class XrdFrmMigrate 00025 { 00026 public: 00027 00028 static void Display(); 00029 00030 static void Queue(XrdFrmFileset *sP); 00031 00032 static void Migrate(int doinit=1); 00033 00034 XrdFrmMigrate() {} 00035 ~XrdFrmMigrate() {} 00036 00037 private: 00038 00039 // Methods 00040 // 00041 static void Add(XrdFrmFileset *fsp); 00042 static int Advance(); 00043 static void Defer(XrdFrmFileset *sP); 00044 static const char *Eligible(XrdFrmFileset *sP, time_t &xTime); 00045 static void Remfix(const char *Ftype, const char *Fname); 00046 static void Scan(); 00047 static int Screen(XrdFrmFileset *sP); 00048 00049 // Static Variables 00050 00051 static XrdOucHash<char> BadFiles; 00052 static XrdFrmFileset *fsDefer; 00053 static int numMig; 00054 }; 00055 #endif