クラス DifficultyTables
- Object
-
- DifficultyTables
-
- すべての実装されたインタフェース:
Runnable
public class DifficultyTables extends Object implements Runnable
LDTライブラリが持つ難易度表定義にアクセスするためのプレースホルダクラスです。ライブラリは難易度表定義の情報を内部で保有しており、それらの定義は特に手続きを必要とせず参照することができます。 当ライブラリのユーザーは当クラスの各種静的フィールド・メソッドを通して難易度表の情報にアクセスすることができます。 内部で保有する難易度表の情報については
Presetsを参照してください。難易度表定義はユーザー定義により追加することも可能です。追加する場合は
TableDescriptionを生成し、add(TableDescription)を呼び出してください。その他、当クラスではライブラリの全体的な振る舞いを決定する各種操作ができます。 詳細は各種メソッドを参照してください。
また、当クラスはエントリポイントを保有しています。Javaの実行環境が整っていればコマンドプロンプト・端末等から 当ライブラリが提供する基本的な機能を実行することができるようになっています。詳細は
main(String[])を参照してください。- 導入されたバージョン:
- 0.1.0
-
-
フィールドの概要
フィールド 修飾子とタイプ フィールド 説明 static PathDEFAULT_LOCATIONデフォルトの難易度表データベース格納先パスstatic StringLIBRARY_VERSIONLDTライブラリのバージョン
-
メソッドの概要
すべてのメソッド staticメソッド concreteメソッド 修飾子とタイプ メソッド 説明 static voidadd(TableDescription tableDesc)難易度表定義を追加します。static Stream<TableDescription>all()全ての登録済み難易度表定義のストリームを返します。static TableDescriptionget(String id)指定したIDの難易度表定義を取得します。static voidmain(String[] args)LDTライブラリのアプリケーションエントリポイントです。static voidprintLog(String msg)デバッグログを出力します。static voidprintLog(String format, Object... args)デバッグログを出力します。static voidsetLocale(Locale locale)LDTライブラリが使用するロケールを設定します。static voidsetLogger(Consumer<String> logger)ロガーを設定します。
-
-
-
メソッドの詳細
-
all
public static Stream<TableDescription> all()
全ての登録済み難易度表定義のストリームを返します。デフォルトでは
Presetsで定義された全ての難易度表定義が走査されます。add(TableDescription)で難易度表定義を追加すると、その定義も走査されます。- 戻り値:
- 全ての登録済み難易度表定義のストリーム
- 導入されたバージョン:
- 0.1.0
-
get
public static TableDescription get(String id)
指定したIDの難易度表定義を取得します。- パラメータ:
id- ID- 戻り値:
- 指定したIDの難易度表定義。該当する難易度表定義が存在しない場合はnull。
- 例外:
NullPointerException- idがnull- 導入されたバージョン:
- 0.1.0
-
add
public static void add(TableDescription tableDesc)
難易度表定義を追加します。当メソッドはライブラリが内部で保有する難易度表定義以外の難易度表を追加したい場合に使用します。 追加された難易度表定義の楽曲情報は、難易度表データベースの更新対象になります。
追加する難易度表定義のIDが他と競合しないように注意してください。競合すると例外がスローされます。
当メソッドはアプリケーションの起動直後の初期化処理時に実行され、アプリケーションにとって必要な難易度表定義を 追加することを想定して設計されています。一度追加された難易度表定義を削除する機能は用意されておらず、 アプリケーションのプロセスが終了するまで残り続けることに注意してください。
- パラメータ:
tableDesc- 追加する難易度表定義- 例外:
NullPointerException- tableDescがnullIllegalArgumentException- IDが競合している- 導入されたバージョン:
- 0.1.0
-
printLog
public static void printLog(String msg)
デバッグログを出力します。当メソッドで出力したデバッグログは
setLogger(Consumer)でロガー関数が登録されている時に出力されます。 デバッグログは当ライブラリの内部動作およびParserを実装したパーサの内部動作を確認する目的で使用します。 アプリケーション固有の出力処理を行うために当メソッドを使用することは非推奨です。- パラメータ:
msg- メッセージ- 導入されたバージョン:
- 0.1.0
-
printLog
public static void printLog(String format, Object... args)
デバッグログを出力します。当メソッドはメッセージを printf() の書式に従って出力メッセージを構築する点を除き
printLog(String)と同等の動作になります。- パラメータ:
format- メッセージの書式args- メッセージの引数リスト- 例外:
IllegalFormatException- メッセージの書式が不正- 導入されたバージョン:
- 0.1.0
-
setLogger
public static void setLogger(Consumer<String> logger)
ロガーを設定します。当メソッドで設定したロガーは
printLog(String)等でデバッグログを出力する際に使用されます。 デフォルトではロガーは設定されておらず、デバッグログは出力されません。ロガーを取り除きたい場合は null を指定してください。
- パラメータ:
logger- ロガー- 導入されたバージョン:
- 0.1.0
-
setLocale
public static void setLocale(Locale locale)
LDTライブラリが使用するロケールを設定します。ロケールは難易度表名称等の各種文字列表現を決定する際に参照されます。当メソッドが実行されない場合、 システムのデフォルトロケールが使用されます。アプリケーションで高度な言語設定を使用しない限り、 特に呼び出す必要はありません。
- パラメータ:
locale- ロケール- 例外:
NullPointerException- localeがnull- 導入されたバージョン:
- 0.1.0
-
main
public static void main(String[] args)
LDTライブラリのアプリケーションエントリポイントです。当ライブラリでは、難易度表に関する基本的な機能を操作するための CLI(コマンドラインインターフェイス) をサポートします。これを利用することで、当ライブラリを使用したアプリケーションを使用せずに難易度表の操作を 行うことができます。
CLIがサポートする機能
- update:
Presetsに定義されたプリセット難易度表の更新機能(インターネット接続が必要です) - show:
Presetsに定義されたプリセット難易度表の楽曲情報一覧出力 - presets:
Presetsに定義されたプリセット難易度表の定義内容一覧出力
CLI機能の動作オプションは以下の通りです。
-l, --location
難易度表更新・楽曲情報一覧出力時、処理対象となる難易度表データベースのパスを指定します。 省略時は当ライブラリ既定の難易度表データベース格納先パスが使用されます。 難易度表更新時、指定されたパスのディレクトリが存在しない場合はディレクトリが作成されます。
-t, --target-id
処理対象となる難易度表定義のIDを1個指定します。複数指定はできません。 省略時は全ての難易度表定義が処理対象となります(デフォルトの動作)。不明なIDを指定するとエラーになります。
以下にCLI実行コマンド例を記載します。ライブラリのファイル名・パスは実際の格納場所で読み替えてください。
LDTライブラリのバージョンを表示する java -jar bms-ldt-x.x.x.jar --version CLIのヘルプを表示する java -jar bms-ldt-x.x.x.jar --help 難易度表を全て更新する java -jar bms-ldt-x.x.x.jar update 指定したディレクトリの難易度表データベースに特定の難易度表をダウンロード・更新する java -jar bms-ldt-x.x.x.jar update -l C:\Users\john\bldt -t genocide_i 指定した難易度表の楽曲情報一覧を出力する java -jar bms-ldt-x.x.x.jar show -t satellite 難易度表の定義内容を出力する java -jar bms-ldt-x.x.x.jar presets
- パラメータ:
args- コマンドライン引数- 導入されたバージョン:
- 0.1.0
- update:
-
-