InterfacedService

@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class InterfacedService(val acceptMultiple: Boolean)(source)

Marker annotation on interfaces intended to be implemented by a service.

If you implement such an interface, your implementation class will need to use @BService.

Implementors of this interface will automatically be registered with the interface's type, in addition to their own type and the ones in @ServiceType.

Retrieval of interfaced services can be done with ServiceContainer.getInterfacedServices or ServiceContainer.getInterfacedServiceTypes. The returned collection is sorted by service priority.

See also

Properties

Link copied to clipboard

Determines if multiple implementations of this interfaced service can exist.