パッケージ com.lmt.lib.bms
クラス BmsSaver
- Object
-
- BmsSaver
-
- 直系の既知のサブクラス:
BmsStandardSaver
public abstract class BmsSaver extends Object
BMSコンテンツを外部データへ出力するセーバーの基底クラスです。当クラスではBMSコンテンツの内容を外部データとして出力する機能を提供します。 外部データはファイル等の何らかの形式で記録されていることを想定しています。
OutputStream
による出力が可能であれば、どのような媒体でもBMSコンテンツを書き出すことができます。- 導入されたバージョン:
- 0.0.1
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 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 void save(BmsContent content, Path dst) throws IOException
指定したパスのファイルにBMSコンテンツを出力します。当メソッドは指定パスのファイルを書き込みモードでオープンし
save(BmsContent, OutputStream)
を実行します。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先パス- 例外:
NullPointerException
- contentがnullNullPointerException
- dstがnullIllegalArgumentException
- contentが参照モードではないIOException
- 指定パスへのファイル作成失敗、またはBMSコンテンツの出力失敗BmsHandleException
- ユーザープログラムの処理異常を検出した
-
save
public void save(BmsContent content, File dst) throws IOException
指定したファイルにBMSコンテンツを出力します。当メソッドは指定ファイルを書き込みモードでオープンし
save(BmsContent, OutputStream)
を実行します。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先パス- 例外:
NullPointerException
- contentがnullNullPointerException
- dstがnullIllegalArgumentException
- contentが参照モードではないIOException
- 指定ファイルへのファイル作成失敗、またはBMSコンテンツの出力失敗BmsHandleException
- ユーザープログラムの処理異常を検出した
-
save
public void save(BmsContent content, OutputStream dst) throws IOException
指定した出力ストリームにBMSコンテンツを出力します。当メソッドは指定されたBMSコンテンツのエラーチェックを行った後、処理を
onWrite(BmsContent, OutputStream)
に委譲します。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先ストリーム- 例外:
NullPointerException
- contentがnullNullPointerException
- dstがnullIllegalArgumentException
- contentが参照モードではないIOException
- BMSコンテンツ出力時、異常を検知したBmsHandleException
- ユーザープログラムの処理異常を検出した
-
onWrite
protected abstract void onWrite(BmsContent content, OutputStream dst) throws IOException
BMSコンテンツの出力処理を実行します。当メソッドに指定されるBMSコンテンツ、出力ストリームは呼び出し前にNot Null保証されています。 また、BMSコンテンツは参照モードであることが保証されているため、全てのデータ読み出しが行える状態です。
BMSコンテンツは、実装先セーバーが規定するフォーマットで出力ストリームに書き出されます。 出力フォーマットの具体的な調整は実装先セーバーで行ってください。
出力処理で何らかの異常により例外(
IOException
以外)がスローされた場合、BmsException
がスローされます。具体的な要因はThrowable.getCause()
を参照してください。 ただし、原因によってはnullが返る場合があります。- パラメータ:
content
- 出力対象のBMSコンテンツdst
- 出力先ストリーム- 例外:
IOException
- dstへのBMSコンテンツ出力時に入出力エラーが発生した時
-
-