// old identifier
final String oldIdentifierName = strings[0];
final int oldIdentifier = Version.releaseId(oldIdentifierName);
// original class
final String originalClassName = strings[1];
final ClassInfo originalClass = classInfoFactory
.getClassInfo(originalClassName);
// original field, optional
final ClassInfo fieldType = classInfoFactory
.getNoProxyClassInfo(Object.class);
final FieldInfo originalField;
if (strings[2].length() == 0) {
originalField = null;
} else {
final String fieldName = strings[2];
originalField = new FieldInfo(originalClass, fieldName, fieldType,
Boolean.FALSE, Boolean.TRUE);
}
// new identifier
final String newIdentifierName = strings[3];
final int newIdentifier = Version.releaseId(newIdentifierName);
// replacement class name
final String replacementClassName = strings[4];
final ClassInfo replacementClass = classInfoFactory
.getClassInfo(replacementClassName);
// replacement field name, optional
final FieldInfo replacementField;
if (strings.length < 6 || strings[5].length() == 0) {
replacementField = null;
} else {
replacementField = new FieldInfo(replacementClass,
strings[5]/* fieldName */, fieldType, Boolean.FALSE,
Boolean.FALSE);
}
// converter class name, optional
final ClassInfo converterClass;
if (strings.length < 7 || strings[6].length() == 0) {
converterClass = ClassInfo.NULL;
} else {
converterClass = classInfoFactory.getClassInfo(strings[6]);
}