org.qi4j.api.service.qualifier
Annotation Type HasMetaInfo


@Retention(value=RUNTIME)
@Documented
public @interface HasMetaInfo

Filter services based on Meta Info being declared on the Service. Meta Info of any type can be set on the service during assembly, e.g.;

 module.addService( MyService.class ).setMetaInfo( new MyCustomInfo(someData) );
 

and then at an injection point you can do this:

 @Service @HasMetaInfo(MyCustomInfo.class) MyService service;
 
to get only a service that has a MyCustomInfo instance set as meta info.


Required Element Summary
 Class[] value
          The Class(es) needed to have been defined in the Service meta info for a qualifier to evaluate true.
 
Optional Element Summary
 boolean anded
          True if the Classes defined in the value() field should be AND'ed instead of OR'ed.
 

Element Detail

value

public abstract Class[] value
The Class(es) needed to have been defined in the Service meta info for a qualifier to evaluate true.

Returns:
One or more classes that should be defined in the service's meta info for the service to be considered qualified. If more than one class is defined, the anded() parameter will define if they must be AND'ed or OR'ed together.

anded

public abstract boolean anded
True if the Classes defined in the value() field should be AND'ed instead of OR'ed.

Returns:
If true, all the Class types defined in value() must be defined for the service for it to be qualified. If false, if any of the Class types defined in value() is defined for the service the service is qualified.
Default:
false