|
服务属性和过滤器
当一个服务注册时,可以将服务属性一起注册。大多情况下属性可以为null,但是也可以提供OSGi特定或关于URL的通用属性。例如,我们想给服务分级 以便区分优先级。我们可以注册Constants.SERVICE_RANKING(代表优先级的数值),作为最初注册过程的一部分。我们可能还想放一些 client想知道的元数据,比如服务的主页在哪儿,该站点的条款链接。为达此目的,我们需要修改activator:
public class Activator implements BundleActivator {
public void start(BundleContext context) {
Hashtable properties = new Hashtable();
properties.put(Constants.SERVICE_RANKING, 10);
properties.put(Constants.SERVICE_VENDOR, "http://tr.im");
properties.put("home.page", "http://tr.im");
properties.put("FAQ", "http://tr.im/website/faqs");
context.registerService(IShorten.class.getName(),
new Trim(), properties);
}
...
} |
|