Interface Serviceable
-
- All Known Subinterfaces:
IAttachedProject,IPrimaryProject,IProject
@OpenApiAll public interface ServiceableA basic interface for components that provide services
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description <T> TgetService(java.lang.Class<T> c)Gets service of given typedefault <T> TgetServiceOrFail(java.lang.Class<T> c)Gets service of the given type or throwsIllegalStateExceptionif there is no such service<T> voidregisterService(java.lang.Class<T> type, T service)Adds service.
-
-
-
Method Detail
-
getService
@CheckForNull <T> T getService(java.lang.Class<T> c)
Gets service of given type- Parameters:
c- the service type- Returns:
- the service or
nullif the service is not available for this component
-
getServiceOrFail
default <T> T getServiceOrFail(java.lang.Class<T> c)
Gets service of the given type or throwsIllegalStateExceptionif there is no such service- Parameters:
c- the service type- Returns:
- the service
-
registerService
<T> void registerService(java.lang.Class<T> type, @CheckForNull T service)Adds service.- Parameters:
type- service typeservice- service
-
-