本文整理汇总了Java中org.apache.camel.spi.TypeConverterRegistry.lookup方法的典型用法代码示例。如果您正苦于以下问题:Java TypeConverterRegistry.lookup方法的具体用法?Java TypeConverterRegistry.lookup怎么用?Java TypeConverterRegistry.lookup使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.camel.spi.TypeConverterRegistry
的用法示例。
在下文中一共展示了TypeConverterRegistry.lookup方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: toInputStream
import org.apache.camel.spi.TypeConverterRegistry; //导入方法依赖的package包/类
@Converter
public static InputStream toInputStream(Response response, Exchange exchange) {
Object obj = response.getEntity();
if (obj == null) {
return null;
}
if (obj instanceof InputStream) {
// short circuit the lookup
return (InputStream)obj;
}
TypeConverterRegistry registry = exchange.getContext().getTypeConverterRegistry();
TypeConverter tc = registry.lookup(InputStream.class, obj.getClass());
if (tc != null) {
return tc.convertTo(InputStream.class, exchange, obj);
}
return null;
}
示例2: convertTo
import org.apache.camel.spi.TypeConverterRegistry; //导入方法依赖的package包/类
@FallbackConverter
public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) {
// use a fallback type converter so we can convert the embedded body if the value is GenericFile
if (GenericFile.class.isAssignableFrom(value.getClass())) {
GenericFile<?> file = (GenericFile<?>) value;
Class<?> from = file.getBody().getClass();
// maybe from is already the type we want
if (from.isAssignableFrom(type)) {
return file.getBody();
}
// no then try to lookup a type converter
TypeConverter tc = registry.lookup(type, from);
if (tc != null) {
Object body = file.getBody();
return tc.convertTo(type, exchange, body);
}
}
return null;
}
示例3: convertTo
import org.apache.camel.spi.TypeConverterRegistry; //导入方法依赖的package包/类
@FallbackConverter
@SuppressWarnings("unchecked")
public static <T extends Payload> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) throws IOException {
Class<?> sourceType = value.getClass();
if (GenericFile.class.isAssignableFrom(sourceType)) {
GenericFile<?> genericFile = (GenericFile<?>) value;
if (genericFile.getFile() != null) {
Class<?> genericFileType = genericFile.getFile().getClass();
TypeConverter converter = registry.lookup(Payload.class, genericFileType);
if (converter != null) {
return (T) converter.convertTo(Payload.class, genericFile.getFile());
}
}
}
return null;
}
示例4: convertTo
import org.apache.camel.spi.TypeConverterRegistry; //导入方法依赖的package包/类
@FallbackConverter
public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) {
// use a fallback type converter so we can convert the embedded body if the value is BeanInvocation
if (BeanInvocation.class.isAssignableFrom(value.getClass())) {
BeanInvocation bi = (BeanInvocation) value;
if (bi.getArgs() == null || bi.getArgs().length != 1) {
// not possible to convert at this time as we try to convert the data passed in at first argument
return Void.TYPE;
}
Class<?> from = bi.getArgs()[0].getClass();
Object body = bi.getArgs()[0];
// maybe from is already the type we want
if (type.isAssignableFrom(from)) {
return body;
}
// no then try to lookup a type converter
TypeConverter tc = registry.lookup(type, from);
if (tc != null) {
return tc.convertTo(type, exchange, body);
}
}
return null;
}
示例5: convertVia
import org.apache.camel.spi.TypeConverterRegistry; //导入方法依赖的package包/类
private static <T, V> CxfPayload<T> convertVia(Class<V> via, Exchange exchange, Object value, TypeConverterRegistry registry) {
TypeConverter tc = registry.lookup(via, value.getClass());
if (tc != null) {
TypeConverter tc1 = registry.lookup(Document.class, via);
if (tc1 != null) {
V is = tc.convertTo(via, exchange, value);
Document document = tc1.convertTo(Document.class, exchange, is);
return documentToCxfPayload(document, exchange);
}
}
return null;
}