Class Advice.MethodSizeHandler.Default.ForAdvice

    • Field Detail

      • baseLocalVariableLength

        private final int baseLocalVariableLength
        The base of the local variable length that is implied by the method instrumentation prior to applying this advice method.
      • stackSizePadding

        private int stackSizePadding
        The additional padding to apply to the operand stack.
      • localVariableLengthPadding

        private int localVariableLengthPadding
        The additional padding to apply to the local variable array.
    • Constructor Detail

      • ForAdvice

        protected ForAdvice​(MethodDescription.InDefinedShape adviceMethod,
                            int baseLocalVariableLength)
        Creates a default method size handler for an advice method.
        Parameters:
        adviceMethod - The advice method.
        baseLocalVariableLength - The base of the local variable length that is implied by the method instrumentation prior to applying this advice method.
    • Method Detail

      • requireStackSize

        public void requireStackSize​(int stackSize)
        Records a minimum stack size required by the represented advice method.
        Specified by:
        requireStackSize in interface Advice.MethodSizeHandler
        Parameters:
        stackSize - The minimum size required by the represented advice method.
      • requireLocalVariableLength

        public void requireLocalVariableLength​(int localVariableLength)
        Requires a minimum length of the local variable array.
        Specified by:
        requireLocalVariableLength in interface Advice.MethodSizeHandler
        Parameters:
        localVariableLength - The minimal required length of the local variable array.
      • requireStackSizePadding

        public void requireStackSizePadding​(int stackSizePadding)
        Requires additional padding for the operand stack that is required for this advice's execution.
        Specified by:
        requireStackSizePadding in interface Advice.MethodSizeHandler.ForAdvice
        Parameters:
        stackSizePadding - The required padding.
      • requireLocalVariableLengthPadding

        public void requireLocalVariableLengthPadding​(int localVariableLengthPadding)
        Requires additional padding for the local variable array that is required for this advice's execution.
        Specified by:
        requireLocalVariableLengthPadding in interface Advice.MethodSizeHandler.ForAdvice
        Parameters:
        localVariableLengthPadding - The required padding.
      • recordMaxima

        public void recordMaxima​(int stackSize,
                                 int localVariableLength)
        Records the maximum values for stack size and local variable array which are required by the advice method for its individual execution without translation.
        Specified by:
        recordMaxima in interface Advice.MethodSizeHandler.ForAdvice
        Parameters:
        stackSize - The minimum required stack size.
        localVariableLength - The minimum required length of the local variable array.