IDLでcustom valuetypeを宣言することによって,デフォルトのマーシャルモデルとアンマーシャルモデルをスキップできますが,ユーザはエンコーディングとデコーディングの責任を負います。
- IDLサンプル25-3 custom valuetype IDL
custom valuetype customPoint{
public long x;
public long y;
private string label;
factory create(in long x, in long y, in string z);
};
ユーザは,CustomMarshalインタフェースからマーシャルおよびアンマーシャルメソッドをインプリメントする必要があります。
- C++の場合
- custom valuetypeを宣言する場合,正規のvaluetypeであるCORBA::StreamableValueとは対照的に,valuetypeはCORBA::CustomValueを継承します。コンパイラは,ユーザのvaluetype用の読み込みメソッド,書き込みメソッドを生成しません。
- ユーザは,値の読み込み,書き込みを行うためにCORBA::DataInputStreamとCORBA::DataOutputStreamをそれぞれ使用して自分の読み込みメソッド,書き込みメソッドをインプリメントする必要があります。
- Javaの場合
- custom valuetypeを宣言する場合,正規のvaluetypeであるorg.omg.CORBA.portable.StreamableValueとは対照的に,valuetypeはorg.omg.CORBA.portable.CustomValueを継承します。コンパイラは,ユーザのvaluetype用の読み込みメソッド,書き込みメソッドを生成しません。
- ユーザは,値の読み込み,書き込みを行うためにorg.omg.CORBA.portable.DataInputStreamとorg.omg.CORBA.portable.DataOutputStreamをそれぞれ使用して自分の読み込みメソッド,書き込みメソッドをインプリメントする必要があります。
All Rights Reserved. Copyright (C) 2006, Hitachi, Ltd.
COPYRIGHT (C) 1992-2004 Borland Software Corporation. All rights reserved.