00001 00008 #pragma once 00009 00010 #include <string> 00011 00012 #include "wiscdb_exception.h" 00013 #include "include/types.h" 00014 00015 namespace wiscdb { 00016 00021 class InvalidRecordException : public WiscDbException { 00022 public: 00030 InvalidRecordException(const RecordId& rec_id, 00031 const PageId page_num); 00032 00036 virtual const RecordId& record_id() const { return record_id_; } 00037 00041 virtual PageId page_number() const { return page_number_; } 00042 00043 protected: 00047 const RecordId record_id_; 00048 00052 const PageId page_number_; 00053 }; 00054 00055 }