// add an annotation that marks the type being handled by this
// ObjectReader
newConcreteType.addMetaData(SerializationConstants.SERIALIZABLE_TYPE, type.getName());
// create a public no arguments constructor.
final NewConstructor constructor = newConcreteType.newConstructor();
constructor.setBody(EmptyCodeBlock.INSTANCE);
constructor.setVisibility(Visibility.PUBLIC);
return newConcreteType;
}