AMF(正確にはAMF3)のEncode/Decodeを行うライブラリを作成したので
Apache2.0ライセンスで公開します。
※上記タブの「ダウンロード」ページより、ダウンロード出来ます。
特徴としては、
- Decode時、代入先の型に適合するように自動型変換される。
- 例えば、代入先の型がBigDecimalの場合、BigDecimal型にDecodeされます。
- 型情報が不明なAMFデータ(Map型のイメージ)でも、代入先の型(Beanとか)に
Decodeされます。
- Java5対応
- enumのEncode/Decodeができます。
- Genericsに対応している(Listの要素型も解決し、適合するように自動変換します)
- Flash Player 10に暫定対応
- VectorのDecodeができる。
- DictionaryのDecode/Encodeができる。
- 依存ライブラリなし
- Javaの標準ライブラリしか使っていないので、簡単に使用可能。
- Google App Engineでも問題なく使用可能。
- Verboseモード搭載
- Encode/Decode時に、AMFデータの構成を表示できます。
- カスタマイズ可能
- Encodeルールを、対象オブジェクトのクラス別に追加・変更できます。
- 型変換ルールを、代入先のクラス別に追加・変更できます。
※使い方の詳細は、ソース側に含まれているusageフォルダー内のテストケースを参照してください。
※現状、XMLデータ型(Marker: 0×07, 0x0B)には対応していません。
※現状、VectorのEncode機能は未提供です(実装中です…)
※Java5以上必須。Java6推奨。(バイナリは、Java6でコンパイルされています)