-マーカー種の制御

Kijimunaでレポートされるエラーor警告のマーカー種を制御する機構を作りはじめました(メカニズムはCVSのバージョンにすでにcommitしてあります)。none/info/warning/error/を設定で選べるようにするのです。すでにバリデーションの部分は別ビルダーに切り出してあるので、全体のon/offもできます。
今、悩んでるのはあまたあるマーカーをすべて細かく制御するのはどうかなと思うので、グルーピングしようとしています。こんな感じかな?

  • バリデーションしない(が、EditorやDiagramを使うためにモデルを構築するビルダーは動く)
  • バリデーションする
    • 重度のXML文法エラー(デフォルト:error)
    • 軽微なXML文法エラー(warning)
    • 自動インジェクションでnullが設定されるもの(warning)
    • 自動インジェクションで設定されるコンポーネント名(info)
    • Java型と関連した問題(error)
    • DiconXML上の矛盾で実行時に例外となるもの(error)
    • DiconXML上の矛盾だが、一応実行できるもの(warning)

ちなみに、以下がメッセージリソース。これを上記で分類します。

  • dicon.TooManyRegistrationException1=コンポーネントのキーが重複してます
  • dicon.validation.ArgValidation2=式言語が記述されているのでcomponentエレメントは無効です
  • dicon.validation.ArgValidation3=式言語もしくはcomponentエレメントを記述してください
  • dicon.validation.ArgValidation4=最後のcomponentエレメント以外は無効です
  • dicon.validation.AspectAssemble1=インターフェイス{0}をコンポーネント化するにはアスペクトが必要です
  • dicon.validation.AspectValidation1={0}が正規表現として不正です
  • dicon.validation.AspectValidation2=org.aopalliance.intercept.MethodInterceptorが実装されていません
  • dicon.validation.AspectValidation3=aopallianceライブラリがクラスパス内にみつからないのでaspectは利用できません
  • dicon.validation.AspectValidation4=コンポーネントclassを指定していないときにはaspectは無効です
  • dicon.validation.AutoConstructorInvoke1={0}はデフォルトコンストラクタにアクセスできません
  • dicon.validation.AutoConstructorInvoke2={0}の第{1}番目の引数にはnullが設定されます
  • dicon.validation.AutoMethodInvoke1={0}の第{1}番目の引数にはnullが設定されます
  • dicon.validation.AutoMethodInvoke2={0}が見つかりません
  • dicon.validation.AutoSetterInjection1={0}の{1}プロパティにはnullが設定されます
  • dicon.validation.ComponentValidation2=式言語もしくはclass属性どちらかを記述してください
  • dicon.validation.ComponentValidation3=式言語とclass属性の両方が記述されています
  • dicon.validation.DestroyMethodValidation1={0}モードでdestroyMethodは無効です
  • dicon.validation.IncludeValidation1=path属性が記述されていません。
  • dicon.validation.IncludeValidation2=path属性で指定された設定ファイル({0})がみつかりません。
  • dicon.validation.ManualConstructorInvoke1=コンストラクター{0}が見つかりません
  • dicon.validation.ManualMethodInvoke1={0}が見つかりません
  • dicon.validation.ManualSetterInjection1={0}クラス内に{1}プロパティ({2})が見つかりません
  • dicon.validation.MethodValidation1=メソッド名が指定されている時には式言語は無効です
  • dicon.validation.MethodValidation2=メソッド名を指定するか、式言語を記述してください
  • dicon.validation.MethodValidation3=メソッド名を指定していないときにはargエレメントは無効です
  • dicon.validation.PropertyValidation1=プロパティ名が指定されていません