public virtual void CascadeActivationToChild(object obj) { if (obj == null) { return; } IActivationContext cascadingContext = ForObject(obj); Db4objects.Db4o.Internal.ClassMetadata classMetadata = cascadingContext.ClassMetadata (); if (classMetadata == null || !classMetadata.HasIdentity()) { return; } CascadeActivation(cascadingContext.Descend()); }
private void EnsureObjectIsActive(IActivationContext context) { if (!context.Depth().Mode().IsActivate()) { return; } if (Handlers4.IsValueType(GetHandler())) { return; } ObjectContainerBase container = context.Container(); ClassMetadata classMetadata = container.ClassMetadataForObject(context.TargetObject ()); if (classMetadata == null || !classMetadata.HasIdentity()) { return; } if (container.IsActive(context.TargetObject())) { return; } container.StillToActivate(context.Descend()); }