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

クラス BmsAssertion


  • public final class BmsAssertion
    extends Object
    Assertionクラスでは、BMSライブラリにおけるアサーションの処理をとりまとめる。 当クラスは外部パッケージへは非公開であり、BMSライブラリ特有の必要な処理がまとめられている。 各クラスは当クラスを静的インポートし、必要な各種メソッドを呼び出す。 アサーションに失敗した場合、メソッドごとに定められた例外をスローする。これらの例外は基本的には RuntimeExceptionを継承した例外となっている。
    • コンストラクタの概要

      コンストラクタ 
      コンストラクタ 説明
      BmsAssertion()  
    • メソッドの概要

      すべてのメソッド staticメソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      static void assertArg​(boolean success, String msgFormat, int arg1)
      引数の汎用アサーション
      static void assertArg​(boolean success, String msgFormat, int arg1, int arg2)
      引数の汎用アサーション
      static void assertArg​(boolean success, String msgFormat, int arg1, int arg2, int arg3)
      引数の汎用アサーション
      static void assertArg​(boolean success, String msgFormat, Object... args)
      引数の汎用アサーション
      static void assertArgIndexRange​(int index, int count, String argName)
      引数のインデックス値の範囲をテストするアサーション
      static void assertArgMeasureWithinRange​(int measure)
      BMS仕様としてBMSデータに記述可能な小節番号(000~999)の範囲をテストするアサーション
      static void assertArgMeasureWithinRange​(int measure, int measureMax)
      BMS仕様としてBMSデータに記述可能な小節番号の範囲をテストするアサーション
      static void assertArgMeasureWithinRange​(int measure, int measureMax, double tick)
      BMS仕様としてBMSデータに記述可能な小節番号の範囲をテストするアサーション
      static void assertArgNotNull​(Object arg, String argName)
      引数がnullではないことをテストするアサーション
      static void assertArgRange​(double value, double min, double max, String valueName)
      引数の値の範囲をテストするアサーション
      static void assertArgRange​(float value, float min, float max, String valueName)
      引数の値の範囲をテストするアサーション
      static void assertArgRange​(int value, int min, int max, String valueName)
      引数の値の範囲をテストするアサーション
      static void assertArgRange​(long value, long min, long max, String valueName)
      引数の値の範囲をテストするアサーション
      static void assertArgTickWithinRange​(double tick, double tickMax, int measure)
      小節の刻み位置の範囲をテストするアサーション
      static void assertArgTickWithinRange​(double tick, int measure)
      小節の刻み位置の範囲をテストするアサーション
      static void assertChannelRange​(int channel)
      小節データ・ノートを登録可能なチャンネルの範囲をテストするアサーション
      static void assertEndChannelRange​(int channel)
      小節データ・ノートを登録可能なチャンネルの範囲(終端)をテストするアサーション
      static void assertField​(boolean success, String format, Object... args)
      クラスフィールドの内容をテストする汎用アサーション
      static void assertSpecChannelRange​(int channel)
      チャンネル番号が仕様チャンネルの範囲かどうかをテストするアサーション
      static void assertUserChannelRange​(int channel)
      チャンネル番号がユーザーチャンネルの範囲かどうかをテストするアサーション
      static void assertValue​(BmsType type, int value)
      ノートの値の範囲をテストするアサーション
      • クラスから継承されたメソッド Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • コンストラクタの詳細

      • BmsAssertion

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

      • assertArg

        public static void assertArg​(boolean success,
                                     String msgFormat,
                                     Object... args)
        引数の汎用アサーション
        パラメータ:
        success - 評価式の結果
        msgFormat - アサーション失敗時のメッセージ書式
        args - メッセージ引数
        例外:
        IllegalArgumentException - アサーションに失敗した
      • assertArg

        public static void assertArg​(boolean success,
                                     String msgFormat,
                                     int arg1)
        引数の汎用アサーション
        パラメータ:
        success - 評価式の結果
        msgFormat - アサーション失敗時のメッセージ書式
        arg1 - メッセージ引数1
        例外:
        IllegalArgumentException - アサーションに失敗した
      • assertArg

        public static void assertArg​(boolean success,
                                     String msgFormat,
                                     int arg1,
                                     int arg2)
        引数の汎用アサーション
        パラメータ:
        success - 評価式の結果
        msgFormat - アサーション失敗時のメッセージ書式
        arg1 - メッセージ引数1
        arg2 - メッセージ引数2
        例外:
        IllegalArgumentException - アサーションに失敗した
      • assertArg

        public static void assertArg​(boolean success,
                                     String msgFormat,
                                     int arg1,
                                     int arg2,
                                     int arg3)
        引数の汎用アサーション
        パラメータ:
        success - 評価式の結果
        msgFormat - アサーション失敗時のメッセージ書式
        arg1 - メッセージ引数1
        arg2 - メッセージ引数2
        arg3 - メッセージ引数3
        例外:
        IllegalArgumentException - アサーションに失敗した
      • assertArgNotNull

        public static void assertArgNotNull​(Object arg,
                                            String argName)
        引数がnullではないことをテストするアサーション
        パラメータ:
        arg - nullチェックを行う引数
        argName - 引数の名前
        例外:
        NullPointerException - 引数がnullだった
      • assertArgRange

        public static void assertArgRange​(int value,
                                          int min,
                                          int max,
                                          String valueName)
        引数の値の範囲をテストするアサーション
        パラメータ:
        value - テストする引数の値
        min - 許容最小値
        max - 許容最大値
        valueName - 引数の名前
        例外:
        IllegalArgumentException - 引数の値が許容範囲外だった
      • assertArgRange

        public static void assertArgRange​(long value,
                                          long min,
                                          long max,
                                          String valueName)
        引数の値の範囲をテストするアサーション
        パラメータ:
        value - テストする引数の値
        min - 許容最小値
        max - 許容最大値
        valueName - 引数の名前
        例外:
        IllegalArgumentException - 引数の値が許容範囲外だった
      • assertArgRange

        public static void assertArgRange​(float value,
                                          float min,
                                          float max,
                                          String valueName)
        引数の値の範囲をテストするアサーション
        パラメータ:
        value - テストする引数の値
        min - 許容最小値
        max - 許容最大値
        valueName - 引数の名前
        例外:
        IllegalArgumentException - 引数の値が許容範囲外だった
      • assertArgRange

        public static void assertArgRange​(double value,
                                          double min,
                                          double max,
                                          String valueName)
        引数の値の範囲をテストするアサーション
        パラメータ:
        value - テストする引数の値
        min - 許容最小値
        max - 許容最大値
        valueName - 引数の名前
        例外:
        IllegalArgumentException - 引数の値が許容範囲外だった
      • assertArgIndexRange

        public static void assertArgIndexRange​(int index,
                                               int count,
                                               String argName)
        引数のインデックス値の範囲をテストするアサーション
        パラメータ:
        index - インデックス
        count - 要素の最大数
        argName - 引数の名前
        例外:
        IndexOutOfBoundsException - インデックスが範囲外
      • assertChannelRange

        public static void assertChannelRange​(int channel)
        小節データ・ノートを登録可能なチャンネルの範囲をテストするアサーション
        パラメータ:
        channel - チャンネル番号
        例外:
        IllegalArgumentException - 小節データ・ノートを登録できないチャンネル番号
      • assertSpecChannelRange

        public static void assertSpecChannelRange​(int channel)
        チャンネル番号が仕様チャンネルの範囲かどうかをテストするアサーション
        パラメータ:
        channel - チャンネル番号
        例外:
        IllegalArgumentException - チャンネル番号が仕様チャンネルではない
      • assertUserChannelRange

        public static void assertUserChannelRange​(int channel)
        チャンネル番号がユーザーチャンネルの範囲かどうかをテストするアサーション
        パラメータ:
        channel - チャンネル番号
        例外:
        IllegalArgumentException - チャンネル番号がユーザーチャンネルではない
      • assertEndChannelRange

        public static void assertEndChannelRange​(int channel)
        小節データ・ノートを登録可能なチャンネルの範囲(終端)をテストするアサーション
        パラメータ:
        channel - チャンネル番号
        例外:
        IllegalArgumentException - 小節データ・ノートを登録できないチャンネル番号
      • assertArgMeasureWithinRange

        public static void assertArgMeasureWithinRange​(int measure)
        BMS仕様としてBMSデータに記述可能な小節番号(000~999)の範囲をテストするアサーション
        パラメータ:
        measure - 小節番号
        例外:
        IllegalArgumentException - 小節番号がBmsSpec.MEASURE_MIN未満、またはBmsSpec.MEASURE_MAX超過
      • assertArgMeasureWithinRange

        public static void assertArgMeasureWithinRange​(int measure,
                                                       int measureMax)
        BMS仕様としてBMSデータに記述可能な小節番号の範囲をテストするアサーション
        パラメータ:
        measure - 小節番号
        measureMax - 小節番号最大値
        例外:
        IllegalArgumentException - 小節番号がBmsSpec.MEASURE_MIN未満、または小節番号最大値超過
      • assertArgMeasureWithinRange

        public static void assertArgMeasureWithinRange​(int measure,
                                                       int measureMax,
                                                       double tick)
        BMS仕様としてBMSデータに記述可能な小節番号の範囲をテストするアサーション
        パラメータ:
        measure - 小節番号
        measureMax - 小節番号最大値
        tick - 刻み位置
        例外:
        IllegalArgumentException - 小節番号がBmsSpec.MEASURE_MIN未満、または小節番号最大値超過
      • assertArgTickWithinRange

        public static void assertArgTickWithinRange​(double tick,
                                                    int measure)
        小節の刻み位置の範囲をテストするアサーション
        パラメータ:
        tick - 刻み位置
        measure - 小節番号
        例外:
        IllegalArgumentException - 刻み位置がBmsSpec.TICK_MIN未満、またはBmsSpec.TICK_MAX超過
      • assertArgTickWithinRange

        public static void assertArgTickWithinRange​(double tick,
                                                    double tickMax,
                                                    int measure)
        小節の刻み位置の範囲をテストするアサーション
        パラメータ:
        tick - 刻み位置
        tickMax - 刻み位置最大値
        measure - 小節番号
        例外:
        IllegalArgumentException - 刻み位置がBmsSpec.TICK_MIN未満、または刻み位置最大値超過
      • assertValue

        public static void assertValue​(BmsType type,
                                       int value)
        ノートの値の範囲をテストするアサーション
        パラメータ:
        type - データ型
        value - ノートの値
        例外:
        IllegalArgumentException - 16進配列チャンネル指定時、ノートの値にBmsSpec.VALUE_16_MIN未満、BmsSpec.VALUE_16_MAX超過の値を指定した
        IllegalArgumentException - 36進配列チャンネル指定時、ノートの値にBmsSpec.VALUE_MIN未満、BmsSpec.VALUE_MAX超過の値を指定した
      • assertField

        public static void assertField​(boolean success,
                                       String format,
                                       Object... args)
        クラスフィールドの内容をテストする汎用アサーション
        パラメータ:
        success - クラスフィールドをテストする評価式の結果
        format - アサーション失敗時のメッセージ書式
        args - メッセージの引数
        例外:
        IllegalStateException - アサーションに失敗した