constructorParameters[parmIndex] = context.getArrayMarshallerCallback()
.demarshall(type, extractJSONObjectProperty(mapping.getKey(), EJObject.class));
}
}
else {
throw new MarshallingException("Encountered non-marshallable type " + toMap +
" while building a marshaller for " + mappingDefinition.getMappingClass());
}
}
else {
MarshallingGenUtil.ensureMarshallerFieldCreated(classStructureBuilder, toMap, type, lazyInitMethod);
if (context.canMarshal(type.getFullyQualifiedName())) {
Statement s = maybeAddAssumedTypes(builder,
"c" + parmIndex,
mapping, fieldDemarshall(mapping, EJObject.class));
constructorParameters[parmIndex] = s;
}
else {
throw new MarshallingException("Encountered non-marshallable type " + type +
" while building a marshaller for " + mappingDefinition.getMappingClass());
}
}
}