org.seasar.framework.jpa.autodetector
クラス PersistenceClassAutoDetector

java.lang.Object
  上位を拡張 org.seasar.framework.autodetector.impl.AbstractClassAutoDetector
      上位を拡張 org.seasar.framework.jpa.autodetector.PersistenceClassAutoDetector
すべての実装されたインタフェース:
ClassAutoDetector

public class PersistenceClassAutoDetector
extends AbstractClassAutoDetector

規約を利用してJPAで管理すべき永続クラスを自動検出するクラスです。

このインスタンスが自動検出を実行するにはnamingConventionに値が設定されていることが必須です。 デフォルトで次の条件に合致するクラスを検出します。

作成者:
taedium

フィールドの概要
protected  java.util.List<java.lang.Class<? extends java.lang.annotation.Annotation>> annotations
          アノテーションのリスト
protected  java.lang.ClassLoader classLoader
          エンティティをロードするためのクラスローダ
protected  NamingConvention namingConvention
          命名規約
 
コンストラクタの概要
PersistenceClassAutoDetector()
          インスタンスを構築します。
 
メソッドの概要
 void addAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> annotation)
          検出の条件として使用するアノテーションを追加します。
 void detect(ClassTraversal.ClassHandler handler)
           
protected  java.lang.Class<?> getClass(java.lang.String className)
          名前から解決してクラスを返します。
 void init()
          このインスタンスを初期化します。
protected  boolean isEntity(java.lang.String packageName, java.lang.String shortClassName)
          指定されたクラスが永続クラスである場合trueを返します。
 void setClassLoader(java.lang.ClassLoader classLoader)
          クラスローダを設定します。
 void setNamingConvention(NamingConvention namingConvention)
          命名規約を設定します。
 
クラス org.seasar.framework.autodetector.impl.AbstractClassAutoDetector から継承されたメソッド
addTargetPackageName, getTargetPackageName, getTargetPackageNameSize
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

annotations

protected final java.util.List<java.lang.Class<? extends java.lang.annotation.Annotation>> annotations
アノテーションのリスト


namingConvention

protected NamingConvention namingConvention
命名規約


classLoader

protected java.lang.ClassLoader classLoader
エンティティをロードするためのクラスローダ

コンストラクタの詳細

PersistenceClassAutoDetector

public PersistenceClassAutoDetector()
インスタンスを構築します。

メソッドの詳細

setNamingConvention

public void setNamingConvention(NamingConvention namingConvention)
命名規約を設定します。

パラメータ:
namingConvention - 命名規約

setClassLoader

public void setClassLoader(java.lang.ClassLoader classLoader)
クラスローダを設定します。

パラメータ:
classLoader - クラスローダ

init

public void init()
このインスタンスを初期化します。


addAnnotation

public void addAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> annotation)
検出の条件として使用するアノテーションを追加します。

パラメータ:
annotation - アノテーション

detect

public void detect(ClassTraversal.ClassHandler handler)

isEntity

protected boolean isEntity(java.lang.String packageName,
                           java.lang.String shortClassName)
指定されたクラスが永続クラスである場合trueを返します。

パラメータ:
packageName - パッケージ名
shortClassName - クラス名
戻り値:
指定されたクラスが永続クラスである場合true、永続クラスでない場合false

getClass

protected java.lang.Class<?> getClass(java.lang.String className)
名前から解決してクラスを返します。

パラメータ:
className - クラス名
戻り値:
クラス


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.