added:
removing objects saving objects (either insert or update or remove) git-svn-id: svn://ttmath.org/publicrep/morm/trunk@1091 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
43
src/model.h
43
src/model.h
@@ -51,7 +51,34 @@ class Model
|
||||
{
|
||||
public:
|
||||
|
||||
enum SaveMode
|
||||
{
|
||||
DO_INSERT_ON_SAVE,
|
||||
DO_UPDATE_ON_SAVE,
|
||||
DO_DELETE_ON_SAVE,
|
||||
DO_NOTHING_ON_SAVE,
|
||||
};
|
||||
|
||||
virtual void set_save_mode(SaveMode save_mode);
|
||||
virtual SaveMode get_save_mode();
|
||||
|
||||
virtual void mark_to_delete();
|
||||
virtual void mark_to_remove();
|
||||
|
||||
virtual void mark_to_insert();
|
||||
virtual void mark_to_update();
|
||||
|
||||
virtual bool object_exists();
|
||||
virtual bool found();
|
||||
|
||||
|
||||
virtual bool was_db_error();
|
||||
virtual std::wstring get_db_error();
|
||||
|
||||
|
||||
void set_connector(ModelConnector & connector);
|
||||
void set_connector(ModelConnector * connector);
|
||||
|
||||
|
||||
/*
|
||||
* map fields to names
|
||||
@@ -81,10 +108,11 @@ public:
|
||||
virtual void generate_update_query(PT::TextStream & stream);
|
||||
virtual void update();
|
||||
|
||||
virtual void set_object_exists(bool object_exists);
|
||||
virtual void generate_remove_query(PT::TextStream & stream);
|
||||
virtual void remove();
|
||||
|
||||
virtual void save();
|
||||
|
||||
virtual bool object_exists();
|
||||
virtual bool found();
|
||||
|
||||
// set object to default values
|
||||
virtual void clear();
|
||||
@@ -93,7 +121,7 @@ public:
|
||||
protected:
|
||||
|
||||
ModelConnector * model_connector;
|
||||
bool morm_object_exists;
|
||||
SaveMode save_mode;
|
||||
|
||||
Model();
|
||||
virtual ~Model();
|
||||
@@ -101,10 +129,17 @@ protected:
|
||||
virtual void before_select();
|
||||
virtual void before_insert();
|
||||
virtual void before_update();
|
||||
virtual void before_remove();
|
||||
|
||||
virtual void after_select();
|
||||
virtual void after_insert();
|
||||
virtual void after_update();
|
||||
virtual void after_remove();
|
||||
|
||||
virtual void after_select_failure();
|
||||
virtual void after_insert_failure();
|
||||
virtual void after_update_failure();
|
||||
virtual void after_remove_failure();
|
||||
|
||||
virtual int get_connector_mode();
|
||||
|
||||
|
Reference in New Issue
Block a user