Package: org.apache.groovy.contracts.common.spi

## [Java] Class AnnotationProcessor

- org.apache.groovy.contracts.common.spi.AnnotationProcessor

-     public abstract class AnnotationProcessor
      extends Object

  Base class for modifying the internal domain model, starting at Contract, and adding parts to it.

  See Also:
    AnnotationProcessorImplementation

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public void` | `process(ProcessingContextInformation processingContextInformation, Contract contract, ClassNode classNode, BlockStatement blockStatement, BooleanExpression booleanExpression)` Processes a class-level contract annotation and updates the contract domain model.
    `` | `public void` | `process(ProcessingContextInformation processingContextInformation, Contract contract, ClassNode classNode, MethodNode methodNode, BlockStatement blockStatement, BooleanExpression booleanExpression)` Processes a method- or constructor-level contract annotation and updates the contract domain model.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### public void process(ProcessingContextInformation processingContextInformation, Contract contract, ClassNode classNode, BlockStatement blockStatement, BooleanExpression booleanExpression)

      Processes a class-level contract annotation and updates the contract domain model.

      Parameters:
        `processingContextInformation` - the current processing context
        `contract` - the mutable contract model
        `classNode` - the annotated class
        `blockStatement` - the original contract block
        `booleanExpression` - the normalized boolean expression

    - #### public void process(ProcessingContextInformation processingContextInformation, Contract contract, ClassNode classNode, MethodNode methodNode, BlockStatement blockStatement, BooleanExpression booleanExpression)

      Processes a method- or constructor-level contract annotation and updates the contract domain model.

      Parameters:
        `processingContextInformation` - the current processing context
        `contract` - the mutable contract model
        `classNode` - the declaring class
        `methodNode` - the annotated method or constructor
        `blockStatement` - the original contract block
        `booleanExpression` - the normalized boolean expression