パッケージ com.lmt.lib.bms
クラス BmsSaver
- Object
-
- BmsSaver
-
- 直系の既知のサブクラス:
BmsStandardSaver
public abstract class BmsSaver extends Object
BMSコンテンツを外部データへ出力するセーバーの基底クラスです。当クラスではBMSコンテンツの内容を外部データとして出力する機能を提供します。 外部データはファイル等の何らかの形式で記録されていることを想定しています。
OutputStream
による出力が可能であれば、どのような媒体でもBMSコンテンツを書き出すことができます。
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 BmsSaver()
-
メソッドの概要
すべてのメソッド インスタンス・メソッド abstractメソッド concreteメソッド 修飾子とタイプ メソッド 説明 protected abstract void
onWrite(BmsContent content, OutputStream dst)
BMSコンテンツの出力処理を実行します。void
save(BmsContent content, File dst)
指定したファイルにBMSコンテンツを出力します。void
save(BmsContent content, OutputStream dst)
指定した出力ストリームにBMSコンテンツを出力します。void
save(BmsContent content, Path dst)
指定したパスのファイルにBMSコンテンツを出力します。
-
-
-
メソッドの詳細
-
save
public final void save(BmsContent content, Path dst) throws IOException, BmsException
指定したパスのファイルにBMSコンテンツを出力します。当メソッドは指定パスのファイルを書き込みモードでオープンし
save(BmsContent, OutputStream)
を実行します。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先パス- 例外:
NullPointerException
- contentがnullNullPointerException
- dstがnullIllegalArgumentException
- contentが参照モードではないIOException
- 指定パスへのファイル作成失敗、またはBMSコンテンツの出力失敗BmsException
- BMSコンテンツ出力時、BMSに関連する要因で出力処理がエラー終了した
-
save
public final void save(BmsContent content, File dst) throws IOException, BmsException
指定したファイルにBMSコンテンツを出力します。当メソッドは指定ファイルを書き込みモードでオープンし
save(BmsContent, OutputStream)
を実行します。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先パス- 例外:
NullPointerException
- contentがnullNullPointerException
- dstがnullIllegalArgumentException
- contentが参照モードではないIOException
- 指定ファイルへのファイル作成失敗、またはBMSコンテンツの出力失敗BmsException
- BMSコンテンツ出力時、BMSに関連する要因で出力処理がエラー終了した
-
save
public final void save(BmsContent content, OutputStream dst) throws IOException, BmsException
指定した出力ストリームにBMSコンテンツを出力します。当メソッドは指定されたBMSコンテンツのエラーチェックを行った後、処理を
onWrite(BmsContent, OutputStream)
に委譲します。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先ストリーム- 例外:
NullPointerException
- contentがnullNullPointerException
- dstがnullIllegalArgumentException
- contentが参照モードではないIOException
- BMSコンテンツ出力時、異常を検知したBmsException
- BMSコンテンツ出力時、BMSに関連する要因で出力処理がエラー終了した
-
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に関連する要因、または出力処理で例外がスローされエラー終了した時
-
-