当前位置: 首页>>代码示例>>Java>>正文


Java Injector.newInstance方法代码示例

本文整理汇总了Java中org.apache.camel.spi.Injector.newInstance方法的典型用法代码示例。如果您正苦于以下问题:Java Injector.newInstance方法的具体用法?Java Injector.newInstance怎么用?Java Injector.newInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.camel.spi.Injector的用法示例。


在下文中一共展示了Injector.newInstance方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: resolveComponent

import org.apache.camel.spi.Injector; //导入方法依赖的package包/类
private ComponentProxyComponent resolveComponent(CamelContext context, Connector step) {
    ComponentProxyFactory factory = ComponentProxyComponent::new;

    if (step.getFactory() != null ) {
        final ClassResolver resolver = context.getClassResolver();
        final Injector injector = context.getInjector();

        Class<? extends ComponentProxyFactory> type = resolver.resolveClass(step.getFactory(), ComponentProxyFactory.class);
        if (type == null) {
            throw new IllegalArgumentException("Unable to resolve a ComponentProxyFactory of type: " + step.getFactory());
        }

        factory = injector.newInstance(type);
        if (factory == null) {
            throw new IllegalArgumentException("Unable to instantiate a ComponentProxyFactory of type: " + step.getFactory());
        }
    }

    return factory.newInstance(step.getComponentId(), step.getComponentScheme());
}
 
开发者ID:syndesisio,项目名称:syndesis,代码行数:21,代码来源:ConnectorHandler.java

示例2: newInstance

import org.apache.camel.spi.Injector; //导入方法依赖的package包/类
private <T> T newInstance(String key, Injector injector, String propertyPrefix, Class<T> expectedType)
    throws IOException, ClassNotFoundException {
    Class<?> type = findClass(key, propertyPrefix);
    Object value = injector.newInstance(type);
    if (expectedType.isInstance(value)) {
        return expectedType.cast(value);
    } else {
        throw new ClassCastException("Not instanceof " + expectedType.getName() + " value: " + value);
    }
}
 
开发者ID:HydAu,项目名称:Camel,代码行数:11,代码来源:DefaultFactoryFinder.java

示例3: createInstance

import org.apache.camel.spi.Injector; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
protected T createInstance(String name, URL url, Injector injector) {
    try {
        Properties properties = loadProperties(url);
        String classname = (String) properties.get("class");
        Class<?> type = bundle.loadClass(classname);
        if (!this.type.isAssignableFrom(type)) {
            throw new IllegalArgumentException("Type is not a " + this.type.getName() + " implementation. Found: " + type.getName());
        }
        return injector.newInstance((Class<T>) type);
    } catch (ClassNotFoundException e) {
        throw new IllegalArgumentException("Invalid URI, no " + this.type.getName() + " registered for scheme : " + name, e);
    }
}
 
开发者ID:HydAu,项目名称:Camel,代码行数:15,代码来源:Activator.java

示例4: testNewInstance

import org.apache.camel.spi.Injector; //导入方法依赖的package包/类
public void testNewInstance() throws Exception {
    Injector injector = context.getInjector();

    MyFoo foo = injector.newInstance(MyFoo.class);
    foo.setName("Claus");

    MyFoo foo2 = injector.newInstance(MyFoo.class);
    assertNotSame(foo, foo2);

    assertEquals("Claus", foo.getName());
    assertNull(foo2.getName());
}
 
开发者ID:HydAu,项目名称:Camel,代码行数:13,代码来源:InjectorDefaultsTest.java

示例5: testSharedInstance

import org.apache.camel.spi.Injector; //导入方法依赖的package包/类
public void testSharedInstance() throws Exception {
    Injector injector = context.getInjector();

    MyBarSingleton bar = injector.newInstance(MyBarSingleton.class, new MyBarSingleton());
    bar.setName("Claus");

    MyBarSingleton bar2 = injector.newInstance(MyBarSingleton.class, bar);
    assertSame(bar, bar2);

    assertEquals("Claus", bar.getName());
    assertEquals("Claus", bar2.getName());
}
 
开发者ID:HydAu,项目名称:Camel,代码行数:13,代码来源:InjectorDefaultsTest.java


注:本文中的org.apache.camel.spi.Injector.newInstance方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。