litesoft
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
package org.litesoft.orsup.base;
import org.litesoft.orsup.selection.*;
import org.litesoft.util.*;
/**
* An inpliementation of a PersistentObjectUniqueKey that is PO Instance/Identity based for those POs that do NOT have a Unique Key
*/
public class PersistentObjectUniqueKeyForInstance extends PersistentObjectUniqueKey
{
transient private PersistentObject<?> mPersistentObject;
private int mPOsystemHashCode;
public PersistentObjectUniqueKeyForInstance( PersistentObject<?> pPersistentObject )
{
Utils.assertNotNull( "PersistentObject", mPersistentObject = pPersistentObject );
mPOsystemHashCode = System.identityHashCode( mPersistentObject );
}
protected int calcHashCode()
{
return mPOsystemHashCode;
}
protected boolean equalsNotNullNotUs( PersistentObjectUniqueKey pThem )
{
if ( pThem instanceof PersistentObjectUniqueKeyForInstance )
{
PersistentObjectUniqueKeyForInstance them = (PersistentObjectUniqueKeyForInstance) pThem;
if ( this.mPOsystemHashCode == them.mPOsystemHashCode )
{
if ( (this.mPersistentObject == null) || (them.mPersistentObject == null) ||
(this.mPersistentObject == them.mPersistentObject) )
{
return true;
}
}
}
return false;
}
protected String generateToStringForConstructor()
{
return null; // ? Should this throw an exception?
}
public WhereClause convertToWC()
{
throw new IllegalStateException(
"Attempt to query on a PersistentObjectUniqueKey for an object that has no PersistentObjectUniqueKey" );
}
}
|
Revision |
Author |
Commited |
Message |
2
|
GeorgeS
|
Sun 07 Feb, 2010 12:50:58 +0000 |
|