Package org.compiere.model
Class MSession
java.lang.Object
org.compiere.model.PO
org.compiere.model.X_AD_Session
org.compiere.model.MSession
- All Implemented Interfaces:
Serializable,Cloneable,Comparator<Object>,I_AD_Session,I_Persistent,Evaluatee,ImmutablePOSupport
Session Model.
- Version:
- $Id: MSession.java,v 1.3 2006/07/30 00:58:05 jjanke Exp $
- Author:
- Jorg Janke, Teo Sarca, SC ARHIPAC SERVICE SRL
- BF [ 1810182 ] Session lost after cache reset
- BF [ 1892156 ] MSession is not really cached
- See Also:
-
Field Summary
Fields inherited from class org.compiere.model.PO
ACCESSLEVEL_ALL, ACCESSLEVEL_CLIENT, ACCESSLEVEL_CLIENTORG, ACCESSLEVEL_ORG, ACCESSLEVEL_SYSTEM, ACCESSLEVEL_SYSTEMCLIENT, ENTITYTYPE_Dictionary, ENTITYTYPE_UserMaintained, I_ZERO, LOCAL_TRX_PREFIX, log, p_ctx, p_info, UUID_NEW_RECORD, XML_ATTRIBUTE_AD_Table_ID, XML_ATTRIBUTE_Record_IDFields inherited from interface org.compiere.model.I_AD_Session
accessLevel, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_AD_Role_ID, COLUMNNAME_AD_Session_ID, COLUMNNAME_AD_Session_UU, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_Description, COLUMNNAME_IsActive, COLUMNNAME_LoginDate, COLUMNNAME_Processed, COLUMNNAME_Remote_Addr, COLUMNNAME_Remote_Host, COLUMNNAME_ServerName, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, COLUMNNAME_WebSession, Model, Table_ID, Table_Name -
Constructor Summary
ConstructorsConstructorDescriptionMSession(Properties ctx, int AD_Session_ID, String trxName) Standard ConstructorMSession(Properties ctx, String trxName) New Session ConstructorMSession(Properties ctx, String AD_Session_UU, String trxName) UUID based ConstructorNew Session ConstructorMSession(Properties ctx, ResultSet rs, String trxName) Load ConstructorMSession(Properties ctx, MSession copy) Copy constructorMSession(Properties ctx, MSession copy, String trxName) Copy constructorCopy constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSkipChangeLogForUpdate(String tableName) Add session flag to disable the capture of update change log for a tablechangeLog(String TrxName, int AD_ChangeLog_ID, int AD_Table_ID, int AD_Column_ID, int Record_ID, int AD_Client_ID, int AD_Org_ID, Object OldValue, Object NewValue) Deprecated.changeLog(String TrxName, int AD_ChangeLog_ID, int AD_Table_ID, int AD_Column_ID, int Record_ID, int AD_Client_ID, int AD_Org_ID, Object OldValue, Object NewValue, String event) Create Change Log (if table is logged)changeLog(String TrxName, int AD_ChangeLog_ID, int AD_Table_ID, int AD_Column_ID, int Record_ID, String Record_UU, int AD_Client_ID, int AD_Org_ID, Object OldValue, Object NewValue, String event) Create Change Log (if table is logged)static MSessioncreate(Properties ctx) Create new session for contextstatic MSessionget(Properties ctx) Get session from contextstatic MSessionget(Properties ctx, boolean createNew) Deprecated.use Get and Create functions.static MSessionget(Properties ctx, String Remote_Addr, String Remote_Host, String WebSession) Get existing or create new sessionstatic intbooleanisSkipChangeLogForUpdate(String tableName) Is skip the capture of update change log for this sessionbooleanIs it a Web Store Sessionvoidlogout()Logout this sessionmark PO as immutablevoidremoveSkipChangeLogForUpdate(String tableName) Remove the session flag that disable the capture of update change log for a table.
After removal of the session flag, the logging decision is back to what have been configured at AD_Table and AD_Column level.voidsetWebStoreSession(boolean webStoreSession) Set Web Store SessiontoString()String RepresentationMethods inherited from class org.compiere.model.X_AD_Session
get_AccessLevel, getAD_Role, getAD_Role_ID, getAD_Session_ID, getAD_Session_UU, getDescription, getKeyNamePair, getLoginDate, getRemote_Addr, getRemote_Host, getServerName, getWebSession, initPO, isProcessed, setAD_Role_ID, setAD_Session_ID, setAD_Session_UU, setDescription, setLoginDate, setProcessed, setRemote_Addr, setRemote_Host, setServerName, setWebSessionMethods inherited from class org.compiere.model.PO
afterDelete, afterSave, beforeDelete, beforeSave, buildInsertSQL, checkImmutable, clearCrossTenantSafe, clone, columnExists, columnExists, compare, copyPO, copyValues, copyValues, createAttachment, delete, delete, delete_Accounting, delete_Tree, deleteEx, deleteEx, dump, dump, equals, get_Attribute, get_Attributes, get_ColumnCount, get_ColumnDescription, get_ColumnDisplayType, get_ColumnIndex, get_ColumnLabel, get_ColumnLookup, get_ColumnName, get_DisplayValue, get_HashMap, get_ID, get_IDOld, get_KeyColumns, get_Logger, get_OptimisticLockingColumns, get_Table_ID, get_TableAttribute, get_TableAttributeAsBoolean, get_TableAttributeAsInt, get_TableAttributes, get_TableName, get_Translation, get_Translation, get_Translation, get_Translation, get_Translation, get_TrxName, get_UUID, get_Value, get_Value, get_ValueAsBoolean, get_ValueAsInt, get_ValueAsInt, get_ValueAsString, get_ValueAsString, get_ValueDifference, get_ValueDifference, get_ValueE, get_ValueOfColumn, get_ValueOld, get_ValueOld, get_ValueOldAsInt, get_WhereClause, get_WhereClause, get_xmlDocument, get_xmlString, getAD_Client_ID, getAD_Org_ID, getAllIDs, getAttachment, getAttachment, getAttachmentData, getCreated, getCreatedBy, getCtx, getDoc, getFindParameter, getPdfAttachment, getUpdated, getUpdatedBy, getUUIDColumnName, getUUIDColumnName, hashCode, insert_Accounting, insert_Tree, insert_Tree, is_Changed, is_Immutable, is_new, is_UseOptimisticLocking, is_ValueChanged, is_ValueChanged, isActive, isAttachment, isColumnMandatory, isColumnUpdateable, isMandatoryOK, isPdfAttachment, isReplication, load, load, load, load, loadByUU, loadComplete, loadDefaults, loadPO, loadSpecial, lock, makeImmutable, postDelete, retrieveIdOfParentValue, retrieveIdOfParentValue, save, save, saveCrossTenantSafe, saveCrossTenantSafeEx, saveCrossTenantSafeEx, saveEx, saveEx, saveNew_afterSetID, saveNew_getID, saveNewSpecial, saveReplica, saveUpdate, set_Attribute, set_ColumnUpdateable, set_CustomColumn, set_CustomColumnReturningBoolean, set_OptimisticLockingColumns, set_TrxName, set_TrxName, set_UseOptimisticLocking, set_Value, set_Value, set_Value, set_Value, set_ValueE, set_ValueNoCheck, set_ValueNoCheckE, set_ValueOfColumn, set_ValueOfColumn, set_ValueOfColumnReturningBoolean, set_ValueOfColumnReturningBoolean, setAD_Client_ID, setAD_Org_ID, setClientOrg, setClientOrg, setCrossTenantSafe, setDoc, setDocWorkflowMgr, setIsActive, setProcessedOn, setReplication, setStandardDefaults, setUpdateable, setUpdatedBy, toInsertSQL, unlock, update_Tree, validForeignKeys, validForeignKeysExMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Comparator
reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLongMethods inherited from interface org.compiere.model.I_AD_Session
getAD_Client_ID, getAD_Org_ID, getCreated, getCreatedBy, getUpdated, getUpdatedBy, isActive, setAD_Org_ID, setIsActiveMethods inherited from interface org.compiere.model.I_Persistent
save
-
Constructor Details
-
MSession
UUID based Constructor- Parameters:
ctx- ContextAD_Session_UU- UUID keytrxName- Transaction
-
MSession
Standard Constructor- Parameters:
ctx- contextAD_Session_ID- idtrxName- transaction
-
MSession
Load Constructor- Parameters:
ctx- contextrs- result settrxName- transaction
-
MSession
public MSession(Properties ctx, String Remote_Addr, String Remote_Host, String WebSession, String trxName) New Session Constructor- Parameters:
ctx- contextRemote_Addr- remote addressRemote_Host- remote hostWebSession- web sessiontrxName- transaction
-
MSession
New Session Constructor- Parameters:
ctx- contexttrxName- transaction
-
MSession
Copy constructor- Parameters:
copy-
-
MSession
Copy constructor- Parameters:
ctx-copy-
-
MSession
Copy constructor- Parameters:
ctx-copy-trxName-
-
-
Method Details
-
get
Deprecated.use Get and Create functions.Get existing or create local session- Parameters:
ctx- contextcreateNew- create if not found- Returns:
- session session
-
get
Get session from context- Parameters:
ctx- context- Returns:
- session
-
create
Create new session for context- Parameters:
ctx- context- Returns:
- session
-
get
public static MSession get(Properties ctx, String Remote_Addr, String Remote_Host, String WebSession) Get existing or create new session- Parameters:
ctx- contextRemote_Addr- remote addressRemote_Host- remote hostWebSession- web session- Returns:
- session
-
isWebStoreSession
public boolean isWebStoreSession()Is it a Web Store Session- Returns:
- true if this is a Web Store Session.
-
setWebStoreSession
public void setWebStoreSession(boolean webStoreSession) Set Web Store Session- Parameters:
webStoreSession- Web Store Session flag
-
toString
String Representation- Overrides:
toStringin classX_AD_Session- Returns:
- info
-
logout
public void logout()Logout this session -
changeLog
@Deprecated public MChangeLog changeLog(String TrxName, int AD_ChangeLog_ID, int AD_Table_ID, int AD_Column_ID, int Record_ID, int AD_Client_ID, int AD_Org_ID, Object OldValue, Object NewValue) Deprecated.Preserved for backward compatibility -
changeLog
public MChangeLog changeLog(String TrxName, int AD_ChangeLog_ID, int AD_Table_ID, int AD_Column_ID, int Record_ID, int AD_Client_ID, int AD_Org_ID, Object OldValue, Object NewValue, String event) Create Change Log (if table is logged)- Parameters:
TrxName- transaction nameAD_ChangeLog_ID- 0 for new change logAD_Table_ID- tableAD_Column_ID- columnRecord_ID- recordAD_Client_ID- clientAD_Org_ID- orgOldValue- oldNewValue- newevent-- Returns:
- saved change log or null
-
changeLog
public MChangeLog changeLog(String TrxName, int AD_ChangeLog_ID, int AD_Table_ID, int AD_Column_ID, int Record_ID, String Record_UU, int AD_Client_ID, int AD_Org_ID, Object OldValue, Object NewValue, String event) Create Change Log (if table is logged)- Parameters:
TrxName- transaction nameAD_ChangeLog_ID- 0 for new change logAD_Table_ID- tableAD_Column_ID- columnRecord_ID- recordRecord_UU- record UUIDAD_Client_ID- clientAD_Org_ID- orgOldValue- oldNewValue- newevent-- Returns:
- saved change log or null
-
getCachedSessionCount
public static int getCachedSessionCount()- Returns:
- number of cached sessions
-
markImmutable
Description copied from interface:ImmutablePOSupportmark PO as immutable- Specified by:
markImmutablein interfaceImmutablePOSupport- Returns:
- PO
-
addSkipChangeLogForUpdate
Add session flag to disable the capture of update change log for a table- Parameters:
tableName- table name, case insensitive
-
removeSkipChangeLogForUpdate
Remove the session flag that disable the capture of update change log for a table.
After removal of the session flag, the logging decision is back to what have been configured at AD_Table and AD_Column level.- Parameters:
tableName- table name, case insensitive
-
isSkipChangeLogForUpdate
Is skip the capture of update change log for this session- Parameters:
tableName- table name, case insensitive- Returns:
- true if it is to skip the capture of update change log for this session
-