public class PropertyEditorManager extends Object
PropertyEditorManagerは、指定された型のエディタを見つけるために3つのテクニックを使用します。まず、指定された型でエディタを具体的に登録できるようにするregisterEditorメソッドを提供します。次に、指定された型の完全指定クラス名に"Editor"を追加して("foo.bah.FozEditor"など)、適切なクラスを見つけようとします。最後に、単純なクラス名(パッケージ名なし)に"Editor"を追加して、一致するクラスをパッケージの検索パスで見つけます。
たとえば入力クラスfoo.bah.Fredであれば、最初にPropertyEditorManagerの表で、エディタがfoo.bah.Fredで登録されているかどうかを調べ、登録されている場合はそのエディタを使用します。次にfoo.bah.FredEditorクラスを探します。最後にstandardEditorsPackage.FredEditorクラスを探します。
デフォルトのPropertyEditorは、Javaプリミティブ型boolean、byte、short、int、long、float、およびdoubleで用意されています。また、java.lang.String、java.awt.Color、およびjava.awt.Fontの各クラスに対しても用意されています。
コンストラクタと説明 |
---|
PropertyEditorManager() |
修飾子と型 | メソッドと説明 |
---|---|
static PropertyEditor |
findEditor(Class<?> targetType)
指定されたターゲット型の値エディタを見つけます。
|
static String[] |
getEditorSearchPath()
プロパティ・エディタを検索するためのパッケージ名を取得します。
|
static void |
registerEditor(Class<?> targetType, Class<?> editorClass)
指定されたターゲット・クラスの値を編集するためのエディタ・クラスを登録します。
|
static void |
setEditorSearchPath(String[] path)
プロパティ・エディタの検索に使用されるパッケージ名のリストを変更します。
|
public static void registerEditor(Class<?> targetType, Class<?> editorClass)
null
の場合は、既存の定義がすべて削除されます。このため、このメソッドは、登録を取り消すために使用できます。ターゲット・クラスまたはエディタ・クラスがアンロードされると、登録が自動的に取り消されます。
セキュリティ・マネージャがある場合は、そのcheckPropertiesAccess
メソッドが呼び出されます。これにより、SecurityExceptionがスローされる可能性があります。
targetType
- 編集する型のClassオブジェクトeditorClass
- エディタ・クラスのクラス・オブジェクトSecurityException
- セキュリティ・マネージャが存在し、そのcheckPropertiesAccess
メソッドがシステム・プロパティの設定を許可しない場合SecurityManager.checkPropertiesAccess()
public static PropertyEditor findEditor(Class<?> targetType)
targetType
- 編集する型のClassオブジェクトpublic static String[] getEditorSearchPath()
この配列のデフォルト値は実装に依存する。たとえばSunの実装での初期設定は{"sun.beans.editors"}。
public static void setEditorSearchPath(String[] path)
最初に、セキュリティ・マネージャがある場合はそのcheckPropertiesAccess
メソッドが呼び出されます。この結果、SecurityExceptionがスローされることがあります。
path
- パッケージ名の配列。SecurityException
- セキュリティ・マネージャが存在し、そのcheckPropertiesAccess
メソッドがシステム・プロパティの設定を許可しない場合。SecurityManager.checkPropertiesAccess()
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.