00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef BESContainer_h_
00034 #define BESContainer_h_ 1
00035
00036 #include <list>
00037 #include <string>
00038
00039 using std::list ;
00040 using std::string ;
00041
00042 #include "BESObj.h"
00043
00059 class BESContainer : public BESObj
00060 {
00061 private:
00062 bool _valid ;
00063 string _real_name ;
00064 string _constraint ;
00065 string _symbolic_name ;
00066 string _container_type ;
00067 string _attributes ;
00068 bool _compressed ;
00069 bool _compression_determined ;
00070
00071 static string _cacheDir ;
00072 static list<string> _compressedExtensions ;
00073 static string _script ;
00074 static string _cacheSize ;
00075
00076 bool is_compressed() ;
00077 void build_list( const string &ext_list ) ;
00078 void get_cache_info() ;
00079 public:
00084 BESContainer( const string &s ) ;
00085
00090 BESContainer( const BESContainer ©_from ) ;
00091
00092 virtual ~BESContainer() {}
00093
00098 void set_constraint( const string &s )
00099 {
00100 _constraint = s ;
00101 }
00102
00108 void set_real_name( const string &s )
00109 {
00110 _real_name = s ;
00111 }
00117 void set_container_type( const string &s )
00118 {
00119 _container_type = s ;
00120 }
00121
00126 void set_attributes( const string &s )
00127 {
00128 _attributes = s ;
00129 }
00130
00138 void set_valid_flag( bool b )
00139 {
00140 _valid = b ;
00141 }
00142
00148 string get_real_name() const
00149 {
00150 return _real_name ;
00151 }
00157 string get_constraint() const
00158 {
00159 return _constraint ;
00160 }
00161
00166 string get_symbolic_name() const
00167 {
00168 return _symbolic_name ;
00169 }
00170
00177 string get_container_type() const
00178 {
00179 return _container_type ;
00180 }
00181
00186 string get_attributes() const
00187 {
00188 return _attributes ;
00189 }
00190
00196 bool is_valid() const {return _valid;}
00197
00203 virtual string access() ;
00204
00209 virtual void dump( ostream &strm ) const ;
00210 };
00211
00212 #endif // BESContainer_h_
00213