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

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ObjectEncoding クラスを使用すると、オブジェクトを直列化するクラス (FileStream、NetStream、NetConnection、SharedObject、ByteArray など) で直列化の設定を定義する際に、以前のバージョンの ActionScript を使用できます。

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

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



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

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 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
ランタイムバージョン: AIR 1.0 Flash Player 9

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

AMF3定数 
public static const AMF3:uint = 3

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

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

DEFAULT定数 
public static const DEFAULT:uint = 3

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

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

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





 

 

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

現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/net/ObjectEncoding.html