public class ReflectiveLoadTimeWeaver extends ObjectSE implements LoadTimeWeaver
LoadTimeWeaver。基になる ClassLoader は、次のウィービングメソッド(LoadTimeWeaver インターフェースで定義されている)をサポートすることが期待されています。public void addTransformer(java.lang.instrument.ClassFileTransformer): この ClassLoader に指定された ClassFileTransformer を登録するため public ClassLoader getThrowawayClassLoader(): この ClassLoader の使い捨てクラスローダーを取得するため (オプション ; ReflectiveLoadTimeWeaver は、その方法が利用できない場合、SimpleThrowawayClassLoader にフォールバックします)上記のメソッドは、パブリックにアクセス可能なクラスに存在する必要があることに注意してください。ただし、クラス自体はアプリケーションのクラスローダーから見える必要はありません。
この LoadTimeWeaver のリフレクティブな性質は、基になる ClassLoader 実装が別のクラスローダー自体(アプリケーションサーバーのクラスローダーなど、Web アプリケーションからは見えない)にロードされている場合に特に役立ちます。この LoadTimeWeaver アダプターと基になる ClassLoader の間に直接の API 依存関係はなく、単に「緩い」メソッド契約です。
これは使用する LoadTimeWeaver です。Resin アプリケーションサーバーバージョン 3.1 +。
addTransformer(java.lang.instrument.ClassFileTransformer), getThrowawayClassLoader(), SimpleThrowawayClassLoader| コンストラクターと説明 |
|---|
ReflectiveLoadTimeWeaver() 現在のコンテキストクラスローダー用の新しい ReflectiveLoadTimeWeaver を作成します。 これは、必要なウィービングメソッドをサポートする必要があります。 |
ReflectiveLoadTimeWeaver(ClassLoaderSE classLoader) 指定されたクラスローダーの新しい SimpleLoadTimeWeaver を作成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void | addTransformer(ClassFileTransformerSE transformer) この LoadTimeWeaver によって適用される ClassFileTransformer を追加します。 |
ClassLoaderSE | getInstrumentableClassLoader() ユーザー定義の ClassFileTransformersSE に基づいて、AspectJ スタイルのロード時間ウィービングによる計測をサポートする ClassLoader を返します。 |
ClassLoaderSE | getThrowawayClassLoader() 使い捨て ClassLoader を返します。これにより、親 ClassLoader に影響を与えることなくクラスをロードおよびインスペクションできます。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic ReflectiveLoadTimeWeaver()
public ReflectiveLoadTimeWeaver(@Nullable ClassLoaderSE classLoader)
classLoader - ウィービングのために委譲する ClassLoader ( 必要な織り方をサポートする必要があります)IllegalStateExceptionSE - 提供された ClassLoader が必要なウィービング方法をサポートしていない場合 public void addTransformer(ClassFileTransformerSE transformer)
LoadTimeWeaverLoadTimeWeaver によって適用される ClassFileTransformer を追加します。LoadTimeWeaver の addTransformer transformer - 追加する ClassFileTransformer public ClassLoaderSE getInstrumentableClassLoader()
LoadTimeWeaverClassFileTransformersSE に基づいて、AspectJ スタイルのロード時間ウィービングによる計測をサポートする ClassLoader を返します。 現在の ClassLoader か、この LoadTimeWeaver インスタンスによって作成された ClassLoader の可能性があります。
LoadTimeWeaver の getInstrumentableClassLoader ClassLoader public ClassLoaderSE getThrowawayClassLoader()
LoadTimeWeaverClassLoader を返します。これにより、親 ClassLoader に影響を与えることなくクラスをロードおよびインスペクションできます。LoadTimeWeaver.getInstrumentableClassLoader() の呼び出しから返された ClassLoaderSE の同じインスタンスを返さないでください。
LoadTimeWeaver の getThrowawayClassLoader ClassLoader; 既存の状態なしで、呼び出しごとに新しいインスタンスを返す必要があります