209.4.3.6. OSGi 服务解析器
OSGi 服务解析器(服务(Class<T> serviceType)
)可用于根据 OSGi 捆绑包上下文中的类型轻松检索服务。
public class MyKuraRouter extends KuraRouter { @Override public void configure() throws Exception { MyService myService = service(MyService.class); ... } }
如果找不到 service,则返回 null
值。如果服务不可用,则需要应用程序失败,使用 requiredService (Class)
方法。如果找不到服务,则 requiredService
会引发 IllegalStateException
。
public class MyKuraRouter extends KuraRouter { @Override public void configure() throws Exception { MyService myService = requiredService(MyService.class); ... } }