internal virtual void Fixup(ParseRecord record, ParseRecord parent)
{
Object obj = record.PRnewObj;
InternalST.Soap(this, "Fixup ",obj," ",((Enum)valueFixupEnum).ToString());
switch(valueFixupEnum)
{
case ValueFixupEnum.Array:
arrayObj.SetValue(obj, indexMap);
break;
case ValueFixupEnum.Member:
InternalST.Soap(this, "Fixup Member new object value ",obj," memberObject ",memberObject);
if (objectInfo.isSi) {
InternalST.Soap(this, "Recording a fixup on member: ", memberName,
" in object id", parent.PRobjectId, " Required Object ", record.PRobjectId);
objectInfo.objectManager.RecordDelayedFixup(parent.PRobjectId, memberName, record.PRobjectId);
} else {
MemberInfo memberInfo = objectInfo.GetMemberInfo(memberName);
InternalST.Soap(this, "Recording a fixup on member:", memberInfo, " in object id ",
parent.PRobjectId," Required Object", record.PRobjectId);
objectInfo.objectManager.RecordFixup(parent.PRobjectId, memberInfo, record.PRobjectId);
}
break;
}
}