00001 #ifndef _VERSION_H_
00002 #define _VERSION_H_
00003
00004 #include<occi.h>
00005 #include <string>
00006 #include "../db/DBConnection.h"
00007
00008 using namespace std;
00009
00013 class Version{
00014
00015 private:
00016 int majorId;
00017 int minorId;
00018 string name;
00019 string creationDate;
00020 bool locked;
00021
00022 public:
00023
00029 Version(int maj, int min);
00030
00038 Version(int maj, int min, string n, bool l);
00047 Version(int maj, int min, string d, string n, bool l);
00048 ~Version();
00050 int getMajorId();
00052 int getMinorId();
00054 string getName();
00056 string getDate();
00058 bool isLocked();
00062 void create(string table);
00063
00064
00068 void lock(string table);
00069
00074 static void clearVersionVector(vector<Version*> v);
00075
00079 Version* clone();
00080
00086 static string incrementName(string n);
00087
00093 bool isMostRecent(string table);
00094
00095 };
00096 #endif