パッケージflash.net
クラスpublic final class ObjectEncoding
継承ObjectEncoding Inheritance Object

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

ObjectEncoding クラスを使用すると、オブジェクトを直列化するクラス (NetStream, NetConnection、SharedObject、ByteArray) を ActionScript の以前のバージョンでも使用できます。

オブジェクトエンコーディングは、AMF (Action Message Format) によるオブジェクトの表現方法を制御します。Flash Player は、AMF を使用することで、Flash アプリケーションとリモートサーバーとの間で効率的に通信を行えるようにします。AMF では、リモートプロシージャコールはコンパクトなバイナリ表現にエンコードされます。このバイナリ表現は、HTTP/HTTPS プロトコルまたは、Flash Media Server が使用する RTMP/RTMPS プロトコルで転送可能です。ActionScript オブジェクトとデータ値は、このバイナリ形式内に直列化されます。これは通常、XML などの他の表現よりもコンパクトです。

Flash Player 9 では、AMF3 および AMF0 の 2 つの異なる形式で直列化を実行できます。AMF3 はデフォルトの直列化形式で、ActionScript 3.0 で使用されます。ActionScript 1.0 および 2.0 で使用される AMF0 と比べてさまざまな利点があります。AMF3 では、AMF0 よりも効率的にネットワーク上にデータが送信されます。AMF3 は、int オブジェクトと uint オブジェクトの整数としての送信と、ByteArray、XML、IExternalizable などの、ActionScript 3.0 でのみ使用できるデータ型をサポートしています。AMF3 は、ActionScript 3.0 で、Flex 2 などの AMF3 エンコードを使用するサーバーを使用している場合にのみ使用できます。

ByteArray クラス、NetConnection クラス、NetStream クラス、SharedObject クラス、Socket クラス、および URLStream クラスには、objectEncoding プロパティが含まれます。このプロパティには ObjectEncoding クラスから定数が割り当てられます。objectEncoding プロパティの動作は、オブジェクトによって異なります。各クラスの objectEncoding プロパティの説明に、この動作についての詳細な説明があります。



パブリック プロパティ
 プロパティ定義元
 Inheritedconstructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  dynamicPropertyWriter : IDynamicPropertyWriter
[static] 動的オブジェクトの動的プロパティの直列化をさらに制御できるようになります。
ObjectEncoding
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
パブリック メソッド
 メソッド定義元
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し列挙できるかどうかを示します。
Object
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
パブリック 定数
 定数定義元
  AMF0 : uint = 0
[static] オブジェクトが ActionScript 1.0 および 2.0 の Action Message Format 形式を使用して直列化されることを指定します。
ObjectEncoding
  AMF3 : uint = 3
[static] オブジェクトが ActionScript 3.0 の Action Message Format 形式を使用して直列化されることを指定します。
ObjectEncoding
  DEFAULT : uint = 3
[static] 現在のプレーヤーのデフォルト (最新) フォーマットを指定します。
ObjectEncoding
プロパティの詳細
dynamicPropertyWriterプロパティ
dynamicPropertyWriter:IDynamicPropertyWriter  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

動的オブジェクトの動的プロパティの直列化をさらに制御できるようになります。このプロパティがデフォルト値の null に設定されている場合、動的プロパティはネイティブコードで直列化されます。このネイティブコードは、値が関数である動的プロパティを除くすべての動的プロパティの書き込みを実行します。

この値は、ダイナミックオブジェクト (ダイナミッククラス内で宣言したオブジェクト) のプロパティに対して、または new 演算子を使用して宣言したオブジェクトに対してのみ、呼び出されます。

このプロパティを使用して、動的オブジェクトのプロパティの直列化からの除外、動的オブジェクトのプロパティへの値の書き込み、または新しいプロパティの作成を実行できます。これらの操作を実行するには、IDynamicPropertyWriter インターフェイスを実装するオブジェクトにこのプロパティを設定します。詳細については、IDynamicPropertyWriter インターフェイスを参照してください。


実装
    public static function get dynamicPropertyWriter():IDynamicPropertyWriter
    public function set dynamicPropertyWriter(value:IDynamicPropertyWriter):void

関連項目

定数の詳細
AMF0定数
public static const AMF0:uint = 0

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

オブジェクトが ActionScript 1.0 および 2.0 の Action Message Format 形式を使用して直列化されることを指定します。

AMF3定数 
public static const AMF3:uint = 3

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

オブジェクトが ActionScript 3.0 の Action Message Format 形式を使用して直列化されることを指定します。

DEFAULT定数 
public static const DEFAULT:uint = 3

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

現在のプレーヤーのデフォルト (最新) フォーマットを指定します。オブジェクトエンコーディング制御は Flash® Player 9 以降でのみ使用できるので、使用される最も古い形式は ActionScript 3.0 対応の Action Message Format 形式ということになります。

たとえば、オブジェクトの objectEncoding プロパティを flash.net.ObjectEncoding.DEFAULT に設定すると、Flash Player は AMF3 エンコーディングを使用します。この先、Flash Player の後のバージョンで新しい AMF バージョンが導入され、コンテンツを再パブリッシュすると、Flash Player はその新しい AMF バージョンを使用します。以前のバージョンの Flash Player との相互運用性について特に注意する必要がない場合に限り、この定数を使用できます。





 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/net/ObjectEncoding.html