use of java.lang.reflect.Member in project roboguice by roboguice.
the class GraphvizGrapher method newImplementationNode.
@Override
protected void newImplementationNode(ImplementationNode node) {
NodeId nodeId = node.getId();
GraphvizNode gnode = new GraphvizNode(nodeId);
gnode.setStyle(NodeStyle.SOLID);
gnode.setHeaderBackgroundColor("#000000");
gnode.setHeaderTextColor("#ffffff");
gnode.setTitle(nameFactory.getClassName(nodeId.getKey()));
for (Member member : node.getMembers()) {
gnode.addField(portIdFactory.getPortId(member), nameFactory.getMemberName(member));
}
addNode(gnode);
}
use of java.lang.reflect.Member in project roboguice by roboguice.
the class ShortNameFactoryTest method testGetMemberName_constructor.
public void testGetMemberName_constructor() throws Exception {
Member constructor = Obj.class.getDeclaredConstructor();
assertEquals("<init>", nameFactory.getMemberName(constructor));
}
use of java.lang.reflect.Member in project roboguice by roboguice.
the class ShortNameFactoryTest method testGetMemberName_method.
public void testGetMemberName_method() throws Exception {
Member method = Obj.class.getDeclaredMethod("method", String.class);
assertEquals("#method(...)", nameFactory.getMemberName(method));
}
use of java.lang.reflect.Member in project roboguice by roboguice.
the class ShortNameFactoryTest method testGetMemberName_field.
public void testGetMemberName_field() throws Exception {
Member field = Obj.class.getDeclaredField("field");
assertEquals("field", nameFactory.getMemberName(field));
}
use of java.lang.reflect.Member in project spring-framework by spring-projects.
the class ObjectToObjectConverter method convert.
@Override
public Object convert(Object source, TypeDescriptor sourceType, TypeDescriptor targetType) {
if (source == null) {
return null;
}
Class<?> sourceClass = sourceType.getType();
Class<?> targetClass = targetType.getType();
Member member = getValidatedMember(targetClass, sourceClass);
try {
if (member instanceof Method) {
Method method = (Method) member;
ReflectionUtils.makeAccessible(method);
if (!Modifier.isStatic(method.getModifiers())) {
return method.invoke(source);
} else {
return method.invoke(null, source);
}
} else if (member instanceof Constructor) {
Constructor<?> ctor = (Constructor<?>) member;
ReflectionUtils.makeAccessible(ctor);
return ctor.newInstance(source);
}
} catch (InvocationTargetException ex) {
throw new ConversionFailedException(sourceType, targetType, source, ex.getTargetException());
} catch (Throwable ex) {
throw new ConversionFailedException(sourceType, targetType, source, ex);
}
// method or Integer(java.lang.Number) constructor exists on java.lang.Integer.
throw new IllegalStateException(String.format("No to%3$s() method exists on %1$s, " + "and no static valueOf/of/from(%1$s) method or %3$s(%1$s) constructor exists on %2$s.", sourceClass.getName(), targetClass.getName(), targetClass.getSimpleName()));
}
Aggregations