Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 1 addition & 33 deletions Orm/Xtensive.Orm/Orm/Persistent.cs
Original file line number Diff line number Diff line change
Expand Up @@ -189,8 +189,7 @@ protected internal T GetNormalizedFieldValue<T>(FieldInfo field)
try {
SystemBeforeGetValue(field);
result = fieldAccessor.GetValue(this);
var resultAsObject = AdjustFieldValue(field, result);
result = (T) resultAsObject;
object resultAsObject = result;
SystemGetValue(field, resultAsObject);
SystemGetValueCompleted(field, resultAsObject, null);
return result;
Expand All @@ -217,7 +216,6 @@ private object GetNormalizedFieldValue(FieldInfo field, FieldAccessor fieldAcces
try {
SystemBeforeGetValue(field);
result = fieldAccessor.GetUntypedValue(this);
result = AdjustFieldValue(field, result);
SystemGetValue(field, result);
SystemGetValueCompleted(field, result, null);
return result;
Expand Down Expand Up @@ -481,7 +479,6 @@ internal void SetNormalizedFieldValue(FieldInfo field, object value, SyncContext
}
if (!canBeEqual || field.IsStructure) {
SystemBeforeTupleChange();
value = AdjustFieldValue(field, oldValue, value);
fieldAccessor.SetUntypedValue(this, value);
SystemTupleChange();
}
Expand Down Expand Up @@ -627,35 +624,6 @@ protected virtual void OnValidate()
{
}

/// <summary>
/// Called when value is read from the field and before it is returned to caller.
/// </summary>
/// <param name="field">The field.</param>
/// <param name="value">The value of the field.</param>
/// <returns></returns>
/// <remarks>
/// Override it to perform changes to the value that is being read.
/// </remarks>
protected virtual object AdjustFieldValue(FieldInfo field, object value)
{
return value;
}

/// <summary>
/// Called before value is stored to the field.
/// </summary>
/// <param name="field">The field.</param>
/// <param name="oldValue">The previous value of the field.</param>
/// <param name="newValue">The value that is being set.</param>
/// <returns></returns>
/// <remarks>
/// Override it to perform changes to the value that is being set.
/// </remarks>
protected virtual object AdjustFieldValue(FieldInfo field, object oldValue, object newValue)
{
return newValue;
}

#endregion

#region System-level event-like members
Expand Down
Loading