Class WrapIdentifierDynamic<T extends JobParameters>

All Implemented Interfaces:
LifecycleUser<T>
Direct Known Subclasses:
WrapIdentifierExternalDeclaration

public abstract class WrapIdentifierDynamic<T extends JobParameters> extends Transformation<T>
The dynamic wrap identifier transformation has a number of abstract methods that can be implemented in order to dynamically supply the parameters for this identifier wrap operation. The wrapping injector is given directly though since the injection methods can vary greatly. TODO: add test that the replacer doesn't run on the injected code (i.e. that all three steps are sequential)
  • Constructor Details

    • WrapIdentifierDynamic

      public WrapIdentifierDynamic(TransformationPhase<T> wrappingInjector)
      Creates a new wrap identifier transformation with a specified wrapping injector phase.
      Parameters:
      wrappingInjector - A phase that injects the additional code into the tree required for making the wrap work
    • WrapIdentifierDynamic

      protected WrapIdentifierDynamic()
      Creates a new wrap identifier transformation with no wrapping injector. The phase for that should be added to the transformation manually.
  • Method Details

    • isActiveDynamic

      protected abstract boolean isActiveDynamic()
      Returns if the phases should be active.
      Returns:
      true if the phases should be active
    • getWrapResultDynamic

      protected abstract String getWrapResultDynamic()
      Returns the wrapping result that is used as a replacement for the target.
      Returns:
      The wrapping result
    • getWrapTargetDynamic

      protected abstract String getWrapTargetDynamic()
      Returns the wrapping target. The wrapping target is the identifier that is replaced with the wrap result.
      Returns:
      The wrapping target