00001 /* 00002 * RecordFileHandle.h 00003 * 00004 * Created on: Mar 28, 2010 00005 * Author: green 00006 */ 00007 00008 #ifndef RECORDFILEHANDLE_H_ 00009 #define RECORDFILEHANDLE_H_ 00010 00011 #include "RecordManager.h" 00012 #include "Record.h" 00013 00017 class RecordFileHandle { 00018 00019 public: 00020 RecordFileHandle(); 00021 ~RecordFileHandle(); 00022 00040 ReturnCode initialize(RecordManager *recordMgr, FileHandle *fileHandle); 00041 00053 ReturnCode getRecord(RecordID *rid, Record *record); 00054 00067 ReturnCode insertRecord(char *data, RecordID *rid); 00068 00078 ReturnCode deleteRecord(RecordID *rid); 00079 00090 ReturnCode updateRecord(Record *record); 00091 00100 ReturnCode forcePage(int pageNo); 00101 00108 ReturnCode forceAllPages(); 00109 00117 FileHandle* getFileHandle(); 00118 00122 uint getRecordSize(); 00123 00124 }; 00125 00126 00127 #endif /* RECORDFILEHANDLE_H_ */