public override void Activate(UnmarshallingContext context) { object obj = Read(context); // Activation of members is necessary on purpose here. // Classes like Hashtable need fully activated members // to be able to calculate hashCode() if (obj != null) { context.Container().Activate(context.Transaction(), obj, context.ActivationDepth( )); } SetOn(context.Transaction(), context.PersistentObject(), obj); }
public virtual object InstantiateTransient(UnmarshallingContext context) { // overridden in YapClassPrimitive // never called for primitive YapAny var obj = InstantiateObject(context); if (obj == null) { return null; } context.Container().Peeked(context.ObjectId(), obj); if (context.ActivationDepth().RequiresActivation()) { InstantiateFields(context); } return obj; }