3.2

新しいGlobalFilterの仕様


アクションフィルタの読み込み



今まではアクションクラスと同じフォルダ(アクションフォルダと呼ぶ)以外にあるmaple.ini(つまりGlobalFilter用ファイル)で、
サフィックスAction(正規表現では/Action$/)のフィルタは無視されていました(読み込まれない)。
3.2からは、一度保持され最終的により下位のサフィックスActionなフィルタがアクションとして有効となる。

GlobalFilterについて



今まではアクションフォルダ以外にあるmaple.ini(GlobalFilter用ファイル)では、[GlobalFilter]セクションに指定された
キーのフィルタのみ読み込まれていた。つまり[GlobalFilter]セクションが無い場合はなにも読み込まれなかった。
3.2からは、動作が逆になります。
つまり[GlobalFilter]セクションが無い場合は、各セクションが読み込まれます。
また、[GlobalFilter]セクションがある場合の動作が変わります。
1.[GlobalFilter]セクション内でキーを指定したフィルタの場合
 指定したキーと同名のセクションが読み込まれます。
2.[GlobalFilter]セクション内でキーを指定されていないフィルタの場合
 より下位のフォルダで使用するために一時的にキープされます。

--------------------------------
modules/foo/maple.ini     (1)
[GlobalFilter]
Filter1 = 

[Filter1]
key1 = val1

[Filter2]
key2 = val2

--------------------------------
modules/foo/bar/maple.ini (2)
[Filter1]
key3 = val3

--------------------------------
modules/foo/bar/maple.ini (3)
[Filter1]
key1 = val1-1
key3 = val3

[Filter2]
key4 = val4

--------------------------------

最終的な値は、
(1),(2)のパターンの場合
[Filter1]
key1 = val1
key3 = val3

(1),(3)のパターンの場合
[Filter1]
key1 = val1-1
key3 = val3

[Filter2]
key2 = val2
key4 = val4

となります。(1)でFilter2については一時保存状態なので、
1:下位のフォルダでGlobalFilter指定されているか
2:最下層で指定されているか
で有効化になります。
(2)のパターンのように下位のフォルダで指定されていない場合は闇に消えます。