private static InteractionBuffer IsUsable(IFacetHolder facetHolder, InteractionContext ic, InteractionBuffer buf) { IFacet[] facets = facetHolder.GetFacets(FacetFilters.IsA(typeof (IDisablingInteractionAdvisor))); foreach (IDisablingInteractionAdvisor advisor in facets) { buf.Append(advisor.Disables(ic)); } return buf; }
public static InteractionBuffer IsValid(IFacetHolder facetHolder, InteractionContext ic, InteractionBuffer buf) { IFacet[] facets = facetHolder.GetFacets(FacetFilters.IsA(typeof (IValidatingInteractionAdvisor))); foreach (IValidatingInteractionAdvisor advisor in facets) { buf.Append(advisor.Invalidates(ic)); } return buf; }
public static bool IsVisible(IFacetHolder facetHolder, InteractionContext ic) { var buf = new InteractionBuffer(); IFacet[] facets = facetHolder.GetFacets(FacetFilters.IsA(typeof (IHidingInteractionAdvisor))); foreach (IHidingInteractionAdvisor advisor in facets) { buf.Append(advisor.Hides(ic)); } return IsVisible(buf); }
public static bool IsVisibleWhenPersistent(IFacetHolder facetHolder, InteractionContext ic) { var buf = new InteractionBuffer(); IFacet[] facets = facetHolder.GetFacets(FacetFilters.IsA(typeof (IHidingInteractionAdvisor))); foreach (IHidingInteractionAdvisor advisor in facets) { if (advisor is IHiddenFacet) { if (((IHiddenFacet) advisor).Value == When.OncePersisted) { continue; } } buf.Append(advisor.Hides(ic)); } return IsVisible(buf); }
public virtual IConsent IsAssociationValid(INakedObject inObject, INakedObject reference) { if (reference != null && !reference.Specification.IsOfType(Specification)) { return GetConsent(string.Format(Resources.NakedObjects.TypeMismatchError, Specification.SingularName)); } if (!inObject.ResolveState.IsNotPersistent()) { if (reference != null && !reference.Specification.IsParseable && reference.ResolveState.IsNotPersistent()) { return GetConsent(Resources.NakedObjects.TransientFieldMessage); } } var buf = new InteractionBuffer(); InteractionContext ic = InteractionContext.ModifyingPropParam(NakedObjectsContext.Session, false, inObject, Identifier, reference); InteractionUtils.IsValid(this, ic, buf); return InteractionUtils.IsValid(buf); }
/// <summary> /// To decode an <see cref="InteractionBuffer" /> returned by /// <see /// cref="IsValid(IFacetHolder,InteractionContext,InteractionBuffer)" /> /// </summary> public static IConsent IsValid(InteractionBuffer buf) { return GetConsent(buf.ToString()); }
/// <summary> /// To decode an <see cref="InteractionBuffer" /> returned by /// <see /// cref="IsUsable(IFacetHolder,InteractionContext,InteractionBuffer)" /> /// </summary> private static IConsent IsUsable(InteractionBuffer buf) { return GetConsent(buf.ToString()); }
private static bool IsVisible(InteractionBuffer buf) { return buf.IsEmpty; }
/// <summary> /// Checks declarative constraints, and then checks imperatively. /// </summary> public virtual IConsent IsParameterSetValid(INakedObject nakedObject, INakedObject[] parameterSet) { InteractionContext ic; var buf = new InteractionBuffer(); if (parameterSet != null) { INakedObject[] parms = RealParameters(nakedObject, parameterSet); for (int i = 0; i < parms.Length; i++) { ic = InteractionContext.ModifyingPropParam(NakedObjectsContext.Session, false, RealTarget(nakedObject), Identifier, parameterSet[i]); InteractionUtils.IsValid(GetParameter(i), ic, buf); } } INakedObject target = RealTarget(nakedObject); ic = InteractionContext.InvokingAction(NakedObjectsContext.Session, false, target, Identifier, parameterSet); InteractionUtils.IsValid(this, ic, buf); return InteractionUtils.IsValid(buf); }