private List<Object> getConstructorArguments(MappedClass mappedClass, ID subject,
PropertiesMap properties, MappedConstructor mappedConstructor) throws InstantiationException, IllegalAccessException {
List<Object> constructorArguments = new ArrayList<Object>(mappedConstructor.getArgumentCount());
UID context = getContext(mappedConstructor.getDeclaringClass(), subject, null);
for (MappedPath path : mappedConstructor.getMappedArguments()) {
constructorArguments.add(getValue(path, getPathValue(path, subject, properties, context), context));
}
return constructorArguments;
}