package com.jqmobile.core.android.db.orm;
import java.util.UUID;
import com.jqmobile.core.orm.DBColumn;
import com.jqmobile.core.orm.DBTable;
import com.jqmobile.core.orm.exception.ORMNotDBTableException;
import com.jqmobile.core.utils.plain.UUIDUtils;
@DBTable
public class ORMDBTable {
@DBColumn(primaryId = true)
private String guid;
/**
* 对应数据库表名(为""是表名跟类名一致)
* @return
*/
private String name;
/**
* 2013-1-21 ADD
* DB对照版本号,默认为0
*
* 测试时使用不重启服务端标志位
* @return
*/
private int version;
/**
* 对象地址
*/
private String classUrl;
public ORMDBTable(){
}
public ORMDBTable(Class<?> c) throws ORMNotDBTableException{
BaseDBTable param = BaseDBTable.getInstance(c);
setClassUrl(c.getName());
setName(param.getTableName());
setRecid(UUIDUtils.getUUIDByText(getName()));
setVersion(param.getDBTable().version());
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
initRecid();
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
}
public String getRecid() {
initRecid();
return guid;
}
private void initRecid() {
if(null == guid){
guid = UUIDUtils.getUUIDByText(name).toString();
}
}
public void setRecid(UUID recid) {
this.guid = recid.toString();
}
public String getGuid() {
return guid;
}
public void setGuid(String guid) {
this.guid = guid;
}
public String getClassUrl() {
return classUrl;
}
public void setClassUrl(String classUrl) {
this.classUrl = classUrl;
}
}