パッケージ jakarta.persistence.spi

インターフェース ClassTransformer


public interface ClassTransformer
永続性プロバイダーは、このインターフェースのインスタンスを PersistenceUnitInfo.addTransformer(jakarta.persistence.spi.ClassTransformer) メソッドに提供します。提供されたトランスフォーマーインスタンスは、エンティティクラスファイルがロードまたは再定義されるときに、変換するために呼び出されます。変換は、クラスが JVM によって定義される前に発生します。
導入:
1.0
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    byte[]
    transform(ClassLoaderSE loader, StringSE className, ClassSE<?> classBeingRedefined, ProtectionDomainSE protectionDomain, byte[] classfileBuffer)
    クラスがロードまたは再定義されているときに呼び出されます。
  • メソッドの詳細

    • transform

      byte[] transform(ClassLoaderSE loader, StringSE className, ClassSE<?> classBeingRedefined, ProtectionDomainSE protectionDomain, byte[] classfileBuffer) throws TransformerException
      クラスがロードまたは再定義されているときに呼び出されます。このメソッドの実装は、提供されたクラスファイルを変換し、新しい置換クラスファイルを返す場合があります。
      パラメーター:
      loader - 変換されるクラスの定義ローダーは、ブートストラップローダーの場合は null になる可能性があります
      className - 完全修飾クラスおよびインターフェース名の内部形式でのクラスの名前
      classBeingRedefined - これが再定義の場合、クラスは再定義されます。それ以外の場合は null
      protectionDomain - 定義または再定義されているクラスの保護ドメイン
      classfileBuffer - クラスファイル形式の入力バイトバッファ - 変更しないでください
      戻り値:
      整形式のクラスファイルバッファ(変換の結果)、または変換が実行されない場合は null
      例外:
      TransformerException - 入力が整形式のクラスファイルを表していない場合