org.seasar.framework.container.factory.aspect
クラス MetaAnnotationAspectDefBuilder

java.lang.Object
  上位を拡張 org.seasar.framework.container.factory.aspect.AbstractAspectDefBuilder
      上位を拡張 org.seasar.framework.container.factory.aspect.MetaAnnotationAspectDefBuilder
すべての実装されたインタフェース:
AspectDefBuilder

public class MetaAnnotationAspectDefBuilder
extends AbstractAspectDefBuilder

メタアノテーションで注釈されたアノテーションを読み取りAspectDefを作成するコンポーネントの実装クラスです。

作成者:
koichik

入れ子のクラスの概要
 class MetaAnnotationAspectDefBuilder.ExpressionImpl
          評価されると指定されたアノテーションで指定された名前のコンポーネント (インターセプタ) をコンテナから取得して返すExpressionの実装です。
 
フィールドの概要
protected  String interceptorNamespace
          インターセプタの名前空間
protected  String interceptorSuffix
          インターセプタの接尾辞
protected  Class<? extends Annotation> metaAnnotationType
          メタアノテーションの型
 
コンストラクタの概要
MetaAnnotationAspectDefBuilder()
          インスタンスを構築します。
MetaAnnotationAspectDefBuilder(Class<? extends Annotation> metaAnnotationType, String interceptorSuffix)
          インスタンスを構築します。
MetaAnnotationAspectDefBuilder(Class<? extends Annotation> metaAnnotationType, String interceptorNamespace, String interceptorSuffix)
          インスタンスを構築します。
 
メソッドの概要
 void appendAspectDef(AnnotationHandler annotationHandler, ComponentDef componentDef)
          コンポーネントからTigerアノテーションを読み取りAspectDefを作成し、コンポーネント定義に追加します。
protected  String getInterceptorName(Annotation annotation)
          アノテーションに指定されているインターセプタのコンポーネント名を返します。
 String getInterceptorNamespace()
          インターセプタの名前空間を返します。
 String getInterceptorSuffix()
          インターセプタの接尾辞を返します。
 Class<? extends Annotation> getMetaAnnotationType()
          メタアノテーションの型を返します。
protected  String getPointcut(Annotation annotation)
          アノテーションに指定されているポイントカットを返します。
protected  void processClass(ComponentDef componentDef, Class<?> componentClass)
          クラスに付けられたメタアノテーションで注釈されたアノテーションを読み取りアスペクト定義を作成してコンポーネント定義に追加します。
protected  void processMethod(ComponentDef componentDef, Class<?> componentClass)
          メソッドに付けられたメタアノテーションで注釈されたアノテーションを読み取りアスペクト定義を作成してコンポーネント定義に追加します。
 void setInterceptorNamespace(String interceptorNamespace)
          インターセプタの名前空間を設定します。
 void setInterceptorSuffix(String interceptorSuffix)
          インターセプタの接尾辞を設定します。
 void setMetaAnnotationType(Class<? extends Annotation> metaAnnotationType)
          メタアノテーションの型を設定します。
 
クラス org.seasar.framework.container.factory.aspect.AbstractAspectDefBuilder から継承されたメソッド
appendAspect, appendAspect
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

metaAnnotationType

protected Class<? extends Annotation> metaAnnotationType
メタアノテーションの型


interceptorNamespace

protected String interceptorNamespace
インターセプタの名前空間


interceptorSuffix

protected String interceptorSuffix
インターセプタの接尾辞

コンストラクタの詳細

MetaAnnotationAspectDefBuilder

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


MetaAnnotationAspectDefBuilder

public MetaAnnotationAspectDefBuilder(Class<? extends Annotation> metaAnnotationType,
                                      String interceptorSuffix)
インスタンスを構築します。

パラメータ:
metaAnnotationType - メタアノテーションの型
interceptorSuffix - インターセプタの接尾辞

MetaAnnotationAspectDefBuilder

public MetaAnnotationAspectDefBuilder(Class<? extends Annotation> metaAnnotationType,
                                      String interceptorNamespace,
                                      String interceptorSuffix)
インスタンスを構築します。

パラメータ:
metaAnnotationType - メタアノテーションの型
interceptorNamespace - インターセプタの名前空間
interceptorSuffix - インターセプタの接尾辞
メソッドの詳細

getMetaAnnotationType

public Class<? extends Annotation> getMetaAnnotationType()
メタアノテーションの型を返します。

戻り値:
メタアノテーションの型

setMetaAnnotationType

public void setMetaAnnotationType(Class<? extends Annotation> metaAnnotationType)
メタアノテーションの型を設定します。

パラメータ:
metaAnnotationType - メタアノテーションの型

getInterceptorNamespace

public String getInterceptorNamespace()
インターセプタの名前空間を返します。

戻り値:
インターセプタの名前空間

setInterceptorNamespace

public void setInterceptorNamespace(String interceptorNamespace)
インターセプタの名前空間を設定します。

パラメータ:
interceptorNamespace - インターセプタの名前空間

getInterceptorSuffix

public String getInterceptorSuffix()
インターセプタの接尾辞を返します。

戻り値:
インターセプタの接尾辞

setInterceptorSuffix

public void setInterceptorSuffix(String interceptorSuffix)
インターセプタの接尾辞を設定します。

パラメータ:
interceptorSuffix - インターセプタの接尾辞

appendAspectDef

public void appendAspectDef(AnnotationHandler annotationHandler,
                            ComponentDef componentDef)
インタフェース AspectDefBuilder の記述:
コンポーネントからTigerアノテーションを読み取りAspectDefを作成し、コンポーネント定義に追加します。

パラメータ:
annotationHandler - このメソッドを呼び出しているアノテーションハンドラ
componentDef - コンポーネント定義

processClass

protected void processClass(ComponentDef componentDef,
                            Class<?> componentClass)
クラスに付けられたメタアノテーションで注釈されたアノテーションを読み取りアスペクト定義を作成してコンポーネント定義に追加します。

パラメータ:
componentDef - コンポーネント定義
componentClass - コンポーネントの型

processMethod

protected void processMethod(ComponentDef componentDef,
                             Class<?> componentClass)
メソッドに付けられたメタアノテーションで注釈されたアノテーションを読み取りアスペクト定義を作成してコンポーネント定義に追加します。

パラメータ:
componentDef - コンポーネント定義
componentClass - コンポーネントの型

getPointcut

protected String getPointcut(Annotation annotation)
アノテーションに指定されているポイントカットを返します。

パラメータ:
annotation - アノテーション
戻り値:
アノテーションに指定されているポイントカット

getInterceptorName

protected String getInterceptorName(Annotation annotation)
アノテーションに指定されているインターセプタのコンポーネント名を返します。

パラメータ:
annotation - アノテーション
戻り値:
インターセプタのコンポーネント名


Copyright ? 2004-2008 The Seasar Foundation. All Rights Reserved.