本文整理汇总了Java中org.osgi.service.component.ComponentFactory类的典型用法代码示例。如果您正苦于以下问题:Java ComponentFactory类的具体用法?Java ComponentFactory怎么用?Java ComponentFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ComponentFactory类属于org.osgi.service.component包,在下文中一共展示了ComponentFactory类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: waitForFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
private ComponentFactory waitForFactory() {
String filter = "(component.factory=com.chuidiang.examples.osgi_factory.adder_factory)";
ServiceReference[] references=null;
while (null == references) {
try {
Thread.sleep(1000);
LOG.info("searching factory");
references = context.getServiceReferences(
ComponentFactory.class.getName(), filter);
} catch (Exception e) {
LOG.severe("Error getting factory " + e.getMessage());
}
}
return (ComponentFactory) context.getService(references[0]);
}
示例2: start
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public void start(BundleContext theContext) throws Exception {
this.context = theContext;
new Thread() {
public void run() {
ComponentFactory factory = waitForFactory();
createSeveralInstances(factory);
}
}.start();
}
示例3: createSeveralInstances
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
private void createSeveralInstances(ComponentFactory factory) {
for (int i = 1; i < 5; i++) {
try {
Dictionary<String, String> configuration = new Hashtable<>();
configuration.put("name", "Increment by " + i);
configuration.put("increment", Integer.toString(i));
factory.newInstance(configuration);
} catch (Exception e) {
LOG.severe("Error instantiating service " + e.getMessage());
}
}
}
示例4: setFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
@Reference(target = "(component.factory=greeter.factory.provider)")
public void setFactory(final ComponentFactory factory) {
try {
lock.writeLock().lock();
this.factory = factory;
} finally {
lock.writeLock().unlock();
}
}
示例5: unsetFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public void unsetFactory(final ComponentFactory factory) {
try {
lock.writeLock().lock();
this.factory = null;
} finally {
lock.writeLock().unlock();
}
}
示例6: testServiceAccess
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
@Test
public void testServiceAccess() throws Exception {
Module modA = getRuntime().installModule(getClass().getClassLoader(), getModuleHeadersA());
modA.start();
ModuleContext contextA = modA.getModuleContext();
String filter = "(component.factory=" + ServiceFactoryB.FACTORY_ID + ")";
Collection<ServiceReference<ComponentFactory>> srefs = contextA.getServiceReferences(ComponentFactory.class, filter);
Assert.assertEquals("ServiceReference not null", 1, srefs.size());
ComponentFactory factory = contextA.getService(srefs.iterator().next());
Dictionary<String, Object> props = new Hashtable<String, Object>();
props.put("key", "val1");
factory.newInstance(props);
Collection<ServiceReference<ServiceB>> srefsB = contextA.getServiceReferences(ServiceB.class, "(key=val1)");
Assert.assertEquals("ServiceReference not null", 1, srefsB.size());
ServiceB srvB = contextA.getService(srefsB.iterator().next());
Assert.assertEquals("ServiceFactoryB#1:val1", srvB.doStuff());
props.put("key", "val2");
factory.newInstance(props);
srefsB = contextA.getServiceReferences(ServiceB.class, "(key=val2)");
Assert.assertEquals("ServiceReference not null", 1, srefsB.size());
srvB = contextA.getService(srefsB.iterator().next());
Assert.assertEquals("ServiceFactoryB#2:val2", srvB.doStuff());
}
示例7: setComponentFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
@Reference(target = "(component.factory=fipro.oneshot.factory)")
void setComponentFactory(ComponentFactory factory) {
this.factory = factory;
}
示例8: APIsWebSocketHandler
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public APIsWebSocketHandler(ComponentFactory webSocketFactory) {
this.webSocketFactory = webSocketFactory;
}
示例9: OverLoadsWebSocketHandler
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public OverLoadsWebSocketHandler(ComponentFactory webSocketFactory) {
this.webSocketFactory = webSocketFactory;
}
示例10: bindAPIComponentFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public void bindAPIComponentFactory(ComponentFactory componentFactory) {
this.webSocketAPIFactory = componentFactory;
}
示例11: unbindAPIComponentFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public void unbindAPIComponentFactory(ComponentFactory componentFactory) {
this.webSocketAPIFactory = null;
}
示例12: bindOverloadComponentFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public void bindOverloadComponentFactory(ComponentFactory componentFactory) {
this.webSocketOverloadFactory = componentFactory;
}
示例13: unbindOverloadComponentFactory
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public void unbindOverloadComponentFactory(ComponentFactory componentFactory) {
this.webSocketOverloadFactory = null;
}
示例14: APIsWebSocketHandler
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public APIsWebSocketHandler(ComponentFactory webSocketFactory) {
this.webSocketFactory=webSocketFactory;
}
示例15: OverLoadsWebSocketHandler
import org.osgi.service.component.ComponentFactory; //导入依赖的package包/类
public OverLoadsWebSocketHandler(ComponentFactory webSocketFactory) {
this.webSocketFactory=webSocketFactory;
}