パッケージ com.lmt.lib.bms

クラス BmsSaver

  • 直系の既知のサブクラス:
    BmsStandardSaver

    public abstract class BmsSaver
    extends Object
    BMSコンテンツを外部データへ出力するセーバーの基底クラスです。

    当クラスではBMSコンテンツの内容を外部データとして出力する機能を提供します。 外部データはファイル等の何らかの形式で記録されていることを想定しています。 OutputStreamによる出力が可能であれば、どのような媒体でもBMSコンテンツを書き出すことができます。

    • コンストラクタの詳細

      • BmsSaver

        public BmsSaver()
    • メソッドの詳細

      • onWrite

        protected abstract void onWrite​(BmsContent content,
                                        OutputStream dst)
                                 throws IOException,
                                        BmsException
        BMSコンテンツの出力処理を実行します。

        当メソッドに指定されるBMSコンテンツ、出力ストリームは呼び出し前にNot Null保証されています。 また、BMSコンテンツは参照モードであることが保証されているため、全てのデータ読み出しが行える状態です。

        BMSコンテンツは、実装先セーバーが規定するフォーマットで出力ストリームに書き出されます。 出力フォーマットの具体的な調整は実装先セーバーで行ってください。

        出力処理で何らかの異常により例外(IOException以外)がスローされた場合、BmsException がスローされます。具体的な要因はThrowable.getCause()を参照してください。 ただし、原因によってはnullが返る場合があります。

        パラメータ:
        content - 出力対象のBMSコンテンツ
        dst - 出力先ストリーム
        例外:
        IOException - dstへのBMSコンテンツ出力時に入出力エラーが発生した時
        BmsException - BMSに関連する要因、または出力処理で例外がスローされエラー終了した時