IDEMPIERE-3653 1005567 Add cache to System
This commit is contained in:
parent
d94e3f8840
commit
8414f71756
|
@ -54,6 +54,7 @@ import org.adempiere.exceptions.DBException;
|
||||||
import org.adempiere.util.ServerContext;
|
import org.adempiere.util.ServerContext;
|
||||||
import org.compiere.Adempiere;
|
import org.compiere.Adempiere;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
|
import org.compiere.util.CacheMgt;
|
||||||
import org.compiere.util.DB;
|
import org.compiere.util.DB;
|
||||||
import org.compiere.util.DisplayType;
|
import org.compiere.util.DisplayType;
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
|
@ -2118,6 +2119,9 @@ public class GridTable extends AbstractTableModel
|
||||||
rs = null;
|
rs = null;
|
||||||
pstmt = null;
|
pstmt = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CacheMgt.get().reset(m_tableName);
|
||||||
|
|
||||||
// everything ok
|
// everything ok
|
||||||
m_rowData = null;
|
m_rowData = null;
|
||||||
m_changed = false;
|
m_changed = false;
|
||||||
|
|
|
@ -34,6 +34,7 @@ import org.adempiere.exceptions.DBException;
|
||||||
import org.compiere.db.CConnection;
|
import org.compiere.db.CConnection;
|
||||||
import org.compiere.db.Database;
|
import org.compiere.db.Database;
|
||||||
import org.compiere.db.LDAP;
|
import org.compiere.db.LDAP;
|
||||||
|
import org.compiere.util.CCache;
|
||||||
import org.compiere.util.CLogMgt;
|
import org.compiere.util.CLogMgt;
|
||||||
import org.compiere.util.DB;
|
import org.compiere.util.DB;
|
||||||
import org.compiere.util.DisplayType;
|
import org.compiere.util.DisplayType;
|
||||||
|
@ -64,24 +65,25 @@ public class MSystem extends X_AD_System
|
||||||
*/
|
*/
|
||||||
public synchronized static MSystem get (Properties ctx)
|
public synchronized static MSystem get (Properties ctx)
|
||||||
{
|
{
|
||||||
if (s_system != null)
|
if (s_system.get(0) != null)
|
||||||
return s_system;
|
return s_system.get(0);
|
||||||
//
|
//
|
||||||
s_system = new Query(ctx, Table_Name, null, null)
|
MSystem system = new Query(ctx, Table_Name, null, null)
|
||||||
.setOrderBy(COLUMNNAME_AD_System_ID)
|
.setOrderBy(COLUMNNAME_AD_System_ID)
|
||||||
.firstOnly();
|
.firstOnly();
|
||||||
if (s_system == null)
|
if (system == null)
|
||||||
return null;
|
return null;
|
||||||
//
|
//
|
||||||
if (!Ini.isClient() && s_system.setInfo())
|
if (!Ini.isClient() && system.setInfo())
|
||||||
{
|
{
|
||||||
s_system.saveEx();
|
system.saveEx();
|
||||||
}
|
}
|
||||||
return s_system;
|
s_system.put(0, system);
|
||||||
|
return system;
|
||||||
} // get
|
} // get
|
||||||
|
|
||||||
/** System - cached */
|
/** System - cached */
|
||||||
private static MSystem s_system = null;
|
private static CCache<Integer,MSystem> s_system = new CCache<Integer,MSystem>(Table_Name, 1, -1, true);
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Default Constructor
|
* Default Constructor
|
||||||
|
@ -94,8 +96,8 @@ public class MSystem extends X_AD_System
|
||||||
super(ctx, 0, mtrxName);
|
super(ctx, 0, mtrxName);
|
||||||
String trxName = null;
|
String trxName = null;
|
||||||
load(trxName); // load ID=0
|
load(trxName); // load ID=0
|
||||||
if (s_system == null)
|
if (s_system.get(0) == null)
|
||||||
s_system = this;
|
s_system.put(0, this);
|
||||||
} // MSystem
|
} // MSystem
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -107,8 +109,8 @@ public class MSystem extends X_AD_System
|
||||||
public MSystem (Properties ctx, ResultSet rs, String trxName)
|
public MSystem (Properties ctx, ResultSet rs, String trxName)
|
||||||
{
|
{
|
||||||
super (ctx, rs, trxName);
|
super (ctx, rs, trxName);
|
||||||
if (s_system == null)
|
if (s_system.get(0) == null)
|
||||||
s_system = this;
|
s_system.put(0, this);
|
||||||
} // MSystem
|
} // MSystem
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue