- All Superinterfaces:
Prototype.Api
- All Known Implementing Classes:
ServiceInfoCriteria.BuilderBase.ServiceInfoCriteriaImpl
Criteria to discover services.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classFluent API builder forServiceInfoCriteria.static classServiceInfoCriteria.BuilderBase<BUILDER extends ServiceInfoCriteria.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends ServiceInfoCriteria> Fluent API builder base forServiceInfoCriteria. -
Method Summary
Modifier and TypeMethodDescriptionThe management agent (i.e., the activator) that is responsible for creating and activating - typically build-time created.static ServiceInfoCriteria.Builderbuilder()Create a new fluent API builder to customize configuration.static ServiceInfoCriteria.Builderbuilder(ServiceInfoCriteria instance) Create a new fluent API builder from an existing instance.The managed services advertised types (i.e., typically its interfaces).static ServiceInfoCriteriacreate()Create a new instance with default values.The managed services external contracts / interfaces.booleanDetermines whether the non-proxied,Interceptedservices should be returned in any lookup operation.default booleanmatches(io.helidon.inject.api.ServiceInfoCriteriaBlueprint criteria) Determines whether this service info matches the criteria for injection.default booleanmatchesContracts(io.helidon.inject.api.ServiceInfoCriteriaBlueprint criteria) Determines whether the provided criteria match just the contracts portion of the provided criteria.The name of the ascribed module, if known.The managed service assigned Qualifier's.runLevel()The optionalRunLevelascribed to the service.The managed service assigned Scope's.The managed service implementation type name.weight()Weight that was declared on the type itself.
-
Method Details
-
builder
Create a new fluent API builder to customize configuration.- Returns:
- a new builder
-
builder
Create a new fluent API builder from an existing instance.- Parameters:
instance- an existing instance used as a base for the builder- Returns:
- a builder based on an instance
-
create
Create a new instance with default values.- Returns:
- a new instance
-
serviceTypeName
The managed service implementation type name.- Returns:
- the service type name
-
scopeTypeNames
The managed service assigned Scope's.- Returns:
- the service scope type name
-
qualifiers
The managed service assigned Qualifier's.- Returns:
- the service qualifiers
-
contractsImplemented
The managed services advertised types (i.e., typically its interfaces).- Returns:
- the service contracts implemented
- See Also:
-
runLevel
The optionalRunLevelascribed to the service.- Returns:
- the service's run level
-
weight
Weight that was declared on the type itself.- Returns:
- the declared weight
-
externalContractsImplemented
The managed services external contracts / interfaces. These should also be contained withincontractsImplemented(). External contracts are from other modules other than the module containing the implementation typically.- Returns:
- the service external contracts implemented
- See Also:
-
activatorTypeName
The management agent (i.e., the activator) that is responsible for creating and activating - typically build-time created.- Returns:
- the activator type name
-
moduleName
The name of the ascribed module, if known.- Returns:
- the module name
-
includeIntercepted
boolean includeIntercepted()Determines whether the non-proxied,Interceptedservices should be returned in any lookup operation. If this option is disabled then only theInterceptor-generated service will be eligible to be returned and not the service being intercepted. The default value isfalse.- Returns:
- true if the non-proxied type intercepted services should be eligible
-
matches
default boolean matches(io.helidon.inject.api.ServiceInfoCriteriaBlueprint criteria) Determines whether this service info matches the criteria for injection. Matches is a looser form of equality check thanequals(). If a service matches criteria it is generally assumed to be viable for assignability.- Parameters:
criteria- the criteria to compare against- Returns:
- true if the criteria provided matches this instance
-
matchesContracts
default boolean matchesContracts(io.helidon.inject.api.ServiceInfoCriteriaBlueprint criteria) Determines whether the provided criteria match just the contracts portion of the provided criteria. Note that it is expected any external contracts have been consolidated into the regular contract section.- Parameters:
criteria- the criteria to compare against- Returns:
- true if the criteria provided matches this instance from only the contracts point of view
-