Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.jdo.identity
Class SingleFieldIdentity

    java.lang.Object
      javax.jdo.identity.SingleFieldIdentity

All Implemented Interfaces:
  java.io.Externalizable, java.io.Serializable

Direct Known Subclasses:
  ByteIdentity, CharIdentity, IntIdentity, LongIdentity, ObjectIdentity, ShortIdentity, StringIdentity

    public abstract class SingleFieldIdentity

extends java.lang.Object
implements java.io.Externalizable

This class is the abstract base class for all single field identity classes. A common case of application identity uses exactly one persistent field in the class to represent identity. In this case, the application can use a standard JDO class instead of creating a new user-defined class for the purpose.

Version:
  2.0
See Also:
  Serialized Form

Field Summary
`protected int` | `hashCode` The hashCode.
`protected java.lang.Object` | `keyAsObject` The key as an Object.
`protected static I18NHelper` | `msg` The Internationalization message helper.

Constructor Summary
`` | `SingleFieldIdentity()` Constructor only for Externalizable.
`protected` | `SingleFieldIdentity(java.lang.Class pcClass)` Constructor with target class.

Method Summary
`protected void` | `assertKeyNotNull(java.lang.Object key)` Assert that the key is not null.
`protected java.lang.Object` | `createKeyAsObject()` Create the key as an Object.
`boolean` | `equals(java.lang.Object obj)` Check the class and class name and object type.
`java.lang.Object` | `getKeyAsObject()` Return the key as an Object.
`java.lang.Class` | `getTargetClass()` Return the target class.
`java.lang.String` | `getTargetClassName()` Return the target class name.
`protected int` | `hashClassName()` Return the hash code of the class name.
`int` | `hashCode()` Return the cached hash code.
`void` | `readExternal(java.io.ObjectInput in)` Read from the input stream.
`protected void` | `setKeyAsObject(java.lang.Object key)` Set the given key as the key for this instance.
`void` | `writeExternal(java.io.ObjectOutput out)` Write to the output stream.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### msg

    protected static I18NHelper msg

  The Internationalization message helper.

### hashCode

    protected int hashCode

  The hashCode.

### keyAsObject

    protected java.lang.Object keyAsObject

  The key as an Object.

Constructor Detail

### SingleFieldIdentity

    protected SingleFieldIdentity(java.lang.Class pcClass)

  Constructor with target class.

  Parameters:
    `pcClass` - the class of the target
  Since:
    2.0

### SingleFieldIdentity

    public SingleFieldIdentity()

  Constructor only for Externalizable.

  Since:
    2.0

Method Detail

### setKeyAsObject

    protected void setKeyAsObject(java.lang.Object key)

  Set the given key as the key for this instance. Compute the hash code for the instance.

  Since:
    2.0

### assertKeyNotNull

    protected void assertKeyNotNull(java.lang.Object key)

  Assert that the key is not null. Throw a JDONullIdentityException if the given key is null.

  Since:
    2.0

### getTargetClass

    public java.lang.Class getTargetClass()

  Return the target class.

  Returns:
    the target class.
  Since:
    2.0

### getTargetClassName

    public java.lang.String getTargetClassName()

  Return the target class name.

  Returns:
    the target class name.
  Since:
    2.0

### getKeyAsObject

    public java.lang.Object getKeyAsObject()

  Return the key as an Object. The method is synchronized to avoid race conditions in multi-threaded environments.

  Returns:
    the key as an Object.
  Since:
    2.0

### createKeyAsObject

    protected java.lang.Object createKeyAsObject()

  Create the key as an Object.

  Returns:
    the key as an Object;
  Since:
    2.0

### equals

    public boolean equals(java.lang.Object obj)

  Check the class and class name and object type. If restored from serialization, class will be null so compare class name.

  Overrides:
    `equals` in class `java.lang.Object`
  Parameters:
    `obj` - the other object
  Returns:
    true if the class or class name is the same

### hashClassName

    protected int hashClassName()

  Return the hash code of the class name.

  Returns:
    the hash code of the class name
  Since:
    2.0

### hashCode

    public int hashCode()

  Return the cached hash code.

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    the cached hash code.

### writeExternal

    public void writeExternal(java.io.ObjectOutput out)
                       throws java.io.IOException

  Write to the output stream.

  Specified by:
    `writeExternal` in interface `java.io.Externalizable`
  Parameters:
    `out` - the stream
  Throws:
    `java.io.IOException`

### readExternal

    public void readExternal(java.io.ObjectInput in)
                      throws java.io.IOException,
                             java.lang.ClassNotFoundException

  Read from the input stream. Creates a new instance with the target class name set

  Specified by:
    `readExternal` in interface `java.io.Externalizable`
  Throws:
    `java.io.IOException`
    `java.lang.ClassNotFoundException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005-2006 Apache Software Foundation. All Rights Reserved.