Back to index

nordugrid-arc-nox  1.1.0~rc6
DataPointLFC.h
Go to the documentation of this file.
00001 // -*- indent-tabs-mode: nil -*-
00002 
00003 #ifndef __ARC_DATAPOINTLFC_H__
00004 #define __ARC_DATAPOINTLFC_H__
00005 
00006 #include <list>
00007 
00008 #include <arc/data/DataPointIndex.h>
00009 
00010 namespace Arc {
00011   class Logger;
00012   class URL;
00013 
00014   class DataPointLFC
00015     : public DataPointIndex {
00016   public:
00017     DataPointLFC(const URL& url, const UserConfig& usercfg);
00018     ~DataPointLFC();
00019     static Plugin* Instance(PluginArgument *arg);
00020     virtual DataStatus Resolve(bool source);
00021     virtual DataStatus PreRegister(bool replication, bool force = false);
00022     virtual DataStatus PostRegister(bool replication);
00023     virtual DataStatus PreUnregister(bool replication);
00024     virtual DataStatus Unregister(bool all);
00025     virtual DataStatus ListFiles(std::list<FileInfo>& files, bool long_list = false, bool resolve = false, bool metadata = false);
00026     virtual const std::string DefaultCheckSum() const;
00027   protected:
00028     static Logger logger;
00029     std::string guid;
00030   private:
00031     std::string ResolveGUIDToLFN();
00032   };
00033 
00034 } // namespace Arc
00035 
00036 #endif // __ARC_DATAPOINTLFC_H__