@SuppressWarnings({"unchecked"}) private DataType getEventType(EventStream stream) { return new JavaType(stream.getEventType()); }
/** * Resolves the consumer method on the target bean after the Spring component has been started. * * @return the bean consumer method */ private Method getConsumerMethod() { if (beanMethod != null) { return beanMethod; } Class<?> beanClass = component.getBeanClass(beanName); for (Method method : beanClass.getMethods()) { Class<?>[] params = method.getParameterTypes(); // setters are only supported if (params.length == 1 && method.getName().equals(consumerName) && params[0].isAssignableFrom(type.getType())) { beanMethod = method; return beanMethod; } } throw new ServiceRuntimeException("Could not load method with type: " + type); }
/** * Resolves the consumer method on the target bean after the Spring component has been started. * * @return the bean consumer method */ private Method getConsumerMethod() { if (beanMethod != null) { return beanMethod; } Class<?> beanClass = component.getBeanClass(beanName); for (Method method : beanClass.getMethods()) { Class<?>[] params = method.getParameterTypes(); // setters are only supported if (params.length == 1 && method.getName().equals(consumerName) && params[0].isAssignableFrom(type.getPhysical())) { beanMethod = method; return beanMethod; } } throw new ServiceRuntimeException("Could not load method with type: " + type); }
private void introspectJAXB(JavaType<?> dataType) { Class<?> physical = dataType.getPhysical(); dataType.setXsdType(xsdName); return; dataType.setXsdType(xsdName); return; dataType.setXsdType(xsdName); return; dataType.setXsdType(xsdName);
public JavaType(Class<?> type, String databinding) { super(type); setDatabinding(databinding); }
@SuppressWarnings({"unchecked"}) private List<DataType> createTypes(PhysicalOperation physicalOperation) throws Fabric3Exception { List<DataType> dataTypes = new ArrayList<>(); if (physicalOperation.getSourceParameterTypes().isEmpty()) { // no params dataTypes.add(EMPTY_TYPE); } else { List<Class<?>> types = physicalOperation.getSourceParameterTypes(); dataTypes.addAll(types.stream().map(type -> new JavaType((type))).collect(Collectors.toList())); } return dataTypes; }
/** * Resolves the consumer method on the target bean after the Spring component has been started. * * @return the bean consumer method */ private Method getConsumerMethod() { if (beanMethod != null) { return beanMethod; } Class<?> beanClass = component.getBeanClass(beanName); for (Method method : beanClass.getMethods()) { Class<?>[] params = method.getParameterTypes(); // setters are only supported if (params.length == 1 && method.getName().equals(consumerName) && params[0].isAssignableFrom(type.getType())) { beanMethod = method; return beanMethod; } } throw new ServiceRuntimeException("Could not load method with type: " + type); }
public Stream2ObjectJsonTransformer create(DataType<?> source, DataType<?> target, List<Class<?>> sourceTypes, List<Class<?>> targetTypes) { JavaType type = (JavaType) target; ObjectMapper mapper = configurator.getDefaultMapper(); Class clazz = type.getPhysical(); return new Stream2ObjectJsonTransformer(clazz, mapper); }
public static List<DataType> createTypes(PhysicalOperation physicalOperation) throws Fabric3Exception { List<DataType> dataTypes = new ArrayList<>(); if (!physicalOperation.getSourceParameterTypes().isEmpty()) { List<Class<?>> types = physicalOperation.getSourceParameterTypes(); dataTypes.addAll(types.stream().map(type -> new JavaType((type))).collect(Collectors.toList())); } return dataTypes; }
public String2ObjectJsonTransformer create(DataType source, DataType target, List<Class<?>> sourceTypes, List<Class<?>> targetTypes) { JavaType type = (JavaType) target; ObjectMapper mapper = configurator.getDefaultMapper(); Class clazz = type.getType(); return new String2ObjectJsonTransformer(clazz, mapper); }
public String2ObjectJsonTransformer create(DataType<?> source, DataType<?> target, List<Class<?>> sourceTypes, List<Class<?>> targetTypes) { JavaType type = (JavaType) target; ObjectMapper mapper = configurator.getDefaultMapper(); Class clazz = type.getPhysical(); return new String2ObjectJsonTransformer(clazz, mapper); }
@SuppressWarnings({"unchecked"}) public Supplier<?> createSupplier(String name, DataType dataType, Document value, ClassLoader classLoader) { Class componentType = dataType.getType().getComponentType(); Class<?> type = componentType; if (type.isPrimitive()) { type = ParamTypes.PRIMITIVE_TO_OBJECT.get(type); } List<Class<?>> types = new ArrayList<>(); types.add(type); Transformer<Node, ?> transformer = getTransformer(name, PROPERTY_TYPE, new JavaType(type), types); Element root = value.getDocumentElement(); NodeList nodes = root.getChildNodes(); Object array = Array.newInstance(componentType, nodes.getLength()); for (int i = 0; i < nodes.getLength(); i++) { Node node = nodes.item(i).getFirstChild(); Object val = transformer.transform(node, classLoader); Array.set(array, i, val); } return () -> array; }
public Stream2ObjectJsonTransformer create(DataType source, DataType target, List<Class<?>> sourceTypes, List<Class<?>> targetTypes) { JavaType type = (JavaType) target; ObjectMapper mapper = configurator.getDefaultMapper(); Class clazz = type.getType(); return new Stream2ObjectJsonTransformer(clazz, mapper); }
@SuppressWarnings({"unchecked"}) public Supplier<?> createSupplier(String name, DataType dataType, Document value, ClassLoader classLoader) { Class componentType = dataType.getType().getComponentType(); Class<?> type = componentType; if (type.isPrimitive()) { type = ParamTypes.PRIMITIVE_TO_OBJECT.get(type); } List<Class<?>> types = new ArrayList<>(); types.add(type); Transformer<Node, ?> transformer = getTransformer(name, PROPERTY_TYPE, new JavaType(type), types); Element root = value.getDocumentElement(); NodeList nodes = root.getChildNodes(); Object array = Array.newInstance(componentType, nodes.getLength()); for (int i = 0; i < nodes.getLength(); i++) { Node node = nodes.item(i).getFirstChild(); Object val = transformer.transform(node, classLoader); Array.set(array, i, val); } return () -> array; }
public String2ObjectJsonTransformer create(DataType source, DataType target, List<Class<?>> sourceTypes, List<Class<?>> targetTypes) { JavaType type = (JavaType) target; ObjectMapper mapper = configurator.getDefaultMapper(); Class clazz = type.getType(); return new String2ObjectJsonTransformer(clazz, mapper); }
@SuppressWarnings({"unchecked"}) private DataType getDataType(Type type, TypeMapping typeMapping) { if (type instanceof Class) { // non-generic type Class<?> nonGenericType = (Class<?>) type; if (nonGenericType.isPrimitive()) { // convert primitive representation to its object equivalent nonGenericType = ParamTypes.PRIMITIVE_TO_OBJECT.get(nonGenericType); } return new JavaType(nonGenericType); } else { // a generic JavaTypeInfo info = helper.createTypeInfo(type, typeMapping); return new JavaGenericType(info); } }
public Stream2ObjectJsonTransformer create(DataType source, DataType target, List<Class<?>> sourceTypes, List<Class<?>> targetTypes) { JavaType type = (JavaType) target; ObjectMapper mapper = configurator.getDefaultMapper(); Class clazz = type.getType(); return new Stream2ObjectJsonTransformer(clazz, mapper); }
@SuppressWarnings({"unchecked"}) private DataType getDataType(Type type, TypeMapping typeMapping) { if (type instanceof Class) { // non-generic type Class<?> nonGenericType = (Class<?>) type; if (nonGenericType.isPrimitive()) { // convert primitive representation to its object equivalent nonGenericType = ParamTypes.PRIMITIVE_TO_OBJECT.get(nonGenericType); } return new JavaType(nonGenericType); } else { // a generic JavaTypeInfo info = helper.createTypeInfo(type, typeMapping); return new JavaGenericType(info); } }
public boolean equals(Object o) { if (this == o) { return true; } if (!(o instanceof DataType)) { return false; } DataType other = (DataType) o; if (!getType().equals(other.getType())) { return false; } if (other instanceof JavaGenericType) { boolean bound = false; // unbound parameters are equivalent to non-generic JavaGenericType otherType = (JavaGenericType) other; for (JavaTypeInfo info : otherType.getTypeInfo().getParameterTypesInfos()) { if (!Object.class.equals(info.getRawType())) { bound = true; break; } } return !bound && otherType.getTypeInfo().getRawType().equals(getType()); } return getType().equals(other.getType()); }
/** * Returns a data type from a logical and physical type pairing. * * @param rawType the raw type * @param actualType the type to construct the data type from * @param mapping the resolved generic type mappings * @return the data type */ @SuppressWarnings({"unchecked"}) private DataType createDataType(Class<?> rawType, Type actualType, TypeMapping mapping) { if (actualType instanceof Class) { // not a generic return new JavaType(rawType); } else { JavaTypeInfo info = helper.createTypeInfo(actualType, mapping); return new JavaGenericType(info); } }