Package org.springframework.aop

# Interface IntroductionAdvisor

All Superinterfaces:
  `Advisor`, `IntroductionInfo`

All Known Implementing Classes:
  `DeclareParentsAdvisor`, `DefaultIntroductionAdvisor`

public interface IntroductionAdvisor extends Advisor, IntroductionInfo
Superinterface for advisors that perform one or more AOP introductions.

This interface cannot be implemented directly; subinterfaces must provide the advice type implementing the introduction.

Introduction is the implementation of additional interfaces (not implemented by a target) via AOP advice.

Since:
  04.04.2003
Author:
  Rod Johnson
See Also:
  - `IntroductionInterceptor`

## Field Summary

### Fields inherited from interface org.springframework.aop.Advisor

`EMPTY_ADVICE`

## Method Summary

Modifier and Type
Method
Description
`ClassFilter`
`getClassFilter()`
Return the filter determining which target classes this introduction should apply to.
`void`
`validateInterfaces()`
Can the advised interfaces be implemented by the introduction advice? Invoked before adding an IntroductionAdvisor.

### Methods inherited from interface org.springframework.aop.Advisor

`getAdvice, isPerInstance`

### Methods inherited from interface org.springframework.aop.IntroductionInfo

`getInterfaces`

## Method Details

### getClassFilter

ClassFilter getClassFilter()
Return the filter determining which target classes this introduction should apply to.

This represents the class part of a pointcut. Note that method matching doesn't make sense to introductions.

Returns:
  the class filter

### validateInterfaces

void validateInterfaces() throws IllegalArgumentException
Can the advised interfaces be implemented by the introduction advice? Invoked before adding an IntroductionAdvisor.

Throws:
  `IllegalArgumentException` - if the advised interfaces can't be implemented by the introduction advice