WebObjects 5.2.3

com.webobjects.eocontrol
Class EOKeyGlobalID

java.lang.Object
  extended bycom.webobjects.eocontrol.EOGlobalID
      extended bycom.webobjects.eocontrol.EOKeyGlobalID
All Implemented Interfaces:
Cloneable, NSCoding, Serializable

public abstract class EOKeyGlobalID
extends EOGlobalID
implements NSCoding

EOKeyGlobalIDはEOGlobalIDのサブクラスです。 オブジェクトを特定するためのエンティティ名と主キー値を持つ、EOModelの情報を元にした永続的なIDです。 EOKeyGlobalIDを生成すると、(複数の)主キー値はその属性名のアルファベット順に並べられます。 EOKeyGlobalIDはインスタンスを生成する globalIDWithEntityName メソッドを定義していますが、フェッチしたデータ行からインスタンスを生成する、EOEntityの globalIDForRow メソッドを使うほうが便利です(EOEntityとEOModelはEOAccessパッケージで定義されています)。 このクラスのコンストラクタは使われません。

See Also:
globalIDWithEntityName(String entityName, Object[] values), EOEntity.globalIDForRow(NSDictionary row), Serialized Form

Nested Class Summary
 
Nested classes inherited from class com.webobjects.foundation.NSCoding
NSCoding.Support
 
Field Summary
 
Fields inherited from class com.webobjects.eocontrol.EOGlobalID
GlobalIDChangedNotification
 
Constructor Summary
protected EOKeyGlobalID(String entityName, int hashCode)
           EOKeyGlobalIDオブジェクトを返します。
 
Method Summary
 Class classForCoder()
           オブジェクトがエンコードされる前に、コーダーのクラスを置き換えることができます。
static Object decodeObject(NSCoder coder)
           coder が持つ型情報とデータを元に、オブジェクトを復元します。
 void encodeWithCoder(NSCoder coder)
           オブジェクトの型情報とデータを coder に書き込みます。
 String entityName()
           オブジェクトを特定するエンティティ名を返します。
static EOKeyGlobalID globalIDWithEntityName(String entityName, Object[] values)
           entityNamevalues に基づいたEOKeyGlobalIDを返します。
 int hashCode()
           オブジェクトのハッシュ値を返します。
abstract  int keyCount()
           グローバルIDを構成する主キー値の数を返します。
abstract  Object[] keyValues()
           グローバルIDを構成する主キー値を返します。
 NSArray keyValuesArray()
           グローバルIDを構成する主キー値をNSArrayで返します。
protected  Object readResolve()
           
 
Methods inherited from class com.webobjects.eocontrol.EOGlobalID
clone, equals, isTemporary
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EOKeyGlobalID

protected EOKeyGlobalID(String entityName,
                        int hashCode)
EOKeyGlobalIDオブジェクトを返します。

Parameters:
entityName - エンティティ名
hashCode - ハッシュ値
Method Detail

classForCoder

public Class classForCoder()
オブジェクトがエンコードされる前に、コーダーのクラスを置き換えることができます。 デフォルト値は getClass メソッドの値です。

Specified by:
classForCoder in interface NSCoding
Returns:
置き換えるコーダークラス
See Also:
encodeWithCoder(NSCoder coder), decodeObject(NSCoder coder), NSCoder, NSCoding

decodeObject

public static Object decodeObject(NSCoder coder)
coder が持つ型情報とデータを元に、オブジェクトを復元します。

Parameters:
coder - 型情報とデータを持つオブジェクト
Returns:
an Object (re)created from the data in coder
See Also:
encodeWithCoder(NSCoder coder), NSCoder, NSCoding

encodeWithCoder

public void encodeWithCoder(NSCoder coder)
オブジェクトの型情報とデータを coder に書き込みます。 decodeObject を使うとオブジェクトを復元することができます。 classForCoder をオーバーライドすることで、独自の型情報を使えるようになります。

Specified by:
encodeWithCoder in interface NSCoding
Parameters:
coder - オブジェクトの型情報とデータを保存するオブジェクト
See Also:
decodeObject(NSCoder coder), classForCoder(), NSCoder, NSCoding

entityName

public String entityName()
オブジェクトを特定するエンティティ名を返します。 この値はEODatabaseContext (EOAccess) の faultForGlobalID などのメソッドで、EOEntity (EOAccess) を特定するために使われます。

Returns:
オブジェクトを特定するエンティティ名

globalIDWithEntityName

public static EOKeyGlobalID globalIDWithEntityName(String entityName,
                                                   Object[] values)
entityNamevalues に基づいたEOKeyGlobalIDを返します。 EOKeyGlobalIDを生成するなら、EOEntityの globalIDForRow メソッドを使うと便利です。

Parameters:
entityName - 新しく生成されるEOKeyGlobalIDに設定されるエンティティ名
values - entityName の主キー値
Returns:
entityNamevalues に基づくEOKeyGlobalID
See Also:
EOEntity.globalIDForRow(NSDictionary row)

hashCode

public int hashCode()
オブジェクトのハッシュ値を返します。 2つのオブジェクトが等しい(equals メソッドで判断されます)ということは、オブジェクトは同じハッシュ値を持つことになります。

Specified by:
hashCode in class EOGlobalID
Returns:
オブジェクトのハッシュ値を返します。

keyCount

public abstract int keyCount()
グローバルIDを構成する主キー値の数を返します。

Returns:
主キー値の数

keyValues

public abstract Object[] keyValues()
グローバルIDを構成する主キー値を返します。

Returns:
主キー値の配列
See Also:
keyValuesArray()

keyValuesArray

public NSArray keyValuesArray()
グローバルIDを構成する主キー値をNSArrayで返します。

Returns:
主キー値の配列 (NSArray)
See Also:
keyValues()

readResolve

protected Object readResolve()
                      throws ObjectStreamException
Throws:
ObjectStreamException

Last updated Thu Oct 21 15:04:16 PDT 2004.

Copyright © 2004 Apple Computer, Inc.