okuyama.imdst.util.serializemap
インタフェース ISerializer

既知の実装クラスの一覧:
ObjectStreamSerializer, ToStringSerializer

public interface ISerializer

SerializeMap用のシリアライザのインターフェース.
本インターフェースをインプリしたクラスは、okuyama.imdst.util.serializemap.SerializeMap内で一度だけインスタンス化されて
以降、マルチスレッド環境で並列利用される。そのため、スレッドセーフに実装する必要がある.
serializeメソッドの第1引数のMapをシリアライズしてbyte配列として返却する.
deSerializeメソッドの第1引数のbyte配列はserializeメソッドで返却した値となるので、デシリアライズしてMapオブジェクトとして返却.

作成者:
T.Okuyama

メソッドの概要
 void clearParentMap()
          自身をインスタンス化したSerializeMapのclearメソッドが呼び出されたタイミングで呼び出される
 java.util.Map deSerialize(byte[] deserializeTarget, java.lang.Object key, int uniqueNo)
          デシリアライズ処理インターフェース.
 byte[] serialize(java.util.Map serializeTarget, java.lang.Class mapKeyClazz, java.lang.Class mapValueClazz, java.lang.Object key, int uniqueNo)
          シリアライズ処理インターフェース.
 void setInstanceCreateMapName(java.lang.String mapName)
          自身をインスタンス化したSerializeMapのユニーク名(インスタンスのHash値)を引数に1度だけ呼び出される.
 

メソッドの詳細

setInstanceCreateMapName

void setInstanceCreateMapName(java.lang.String mapName)
自身をインスタンス化したSerializeMapのユニーク名(インスタンスのHash値)を引数に1度だけ呼び出される.

パラメータ:
mapName -

serialize

byte[] serialize(java.util.Map serializeTarget,
                 java.lang.Class mapKeyClazz,
                 java.lang.Class mapValueClazz,
                 java.lang.Object key,
                 int uniqueNo)
シリアライズ処理インターフェース.

パラメータ:
serializeTarget - シリアライズするターゲットオブジェクト(具象クラスはHashMap)
mapKeyClazz - シリアライズするターゲットオブジェクトのMapがKey値として持つクラス(シリアライス、デシリアライズ時の指標)
mapValueClazz - シリアライズするターゲットオブジェクトのMapがValue値として持つクラス(シリアライス、デシリアライズ時の指標)
key - 本処理を呼び出した処理が使用しようとしているKey値
uniqueNo - 本処理の対象となるMapをあらわすユニークな値(この値が同じ場合は同一のMapを処理しようとしている)
戻り値:
シリアライズ済み返却値

deSerialize

java.util.Map deSerialize(byte[] deserializeTarget,
                          java.lang.Object key,
                          int uniqueNo)
デシリアライズ処理インターフェース.

パラメータ:
deserializeTarget - デシリアライズターゲット値(serializeメソッドで返却した値)
key - 本処理を呼び出した処理が使用しようとしているKey値
uniqueNo - 本処理の対象となるMapをあらわすユニークな値(この値が同じ場合は同一のMapを処理しようとしている)
戻り値:
デシリアライズ済み返却値

clearParentMap

void clearParentMap()
自身をインスタンス化したSerializeMapのclearメソッドが呼び出されたタイミングで呼び出される