public IObjectFacade[] GetChoices(IObjectFacade objectFacade, IDictionary <string, object> parameterNameValues) { var otherParms = parameterNameValues == null ? null : parameterNameValues.Select(kvp => new { kvp.Key, kvp.Value, parm = Action.Parameters.Single(p => p.Id == kvp.Key) }); var pnv = otherParms == null ? null : otherParms.ToDictionary(a => a.Key, a => SafeGetValue(a.parm, a.Value)); return(WrappedSpec.GetChoices(((ObjectFacade)objectFacade).WrappedNakedObject, pnv).Select(no => ObjectFacade.Wrap(no, FrameworkFacade, framework)).Cast <IObjectFacade>().ToArray()); }
public bool IsSetToImplicitDefault(IObjectFacade objectFacade) { // return true if it's scalar and and still set to its implicit default value (eg 0 for an int) if (!DefaultTypeIsExplicit(objectFacade) && WrappedSpec.ReturnSpec.IsParseable) { var dflt = WrappedSpec.GetDefault(objectFacade.WrappedAdapter()); var currentValue = GetValue(objectFacade); return(dflt?.Object == currentValue?.Object); } return(false); }
public IConsentFacade IsValid(IObjectFacade target, object value) { var t = ((ObjectFacade)target).WrappedNakedObject; IConsent consent; try { var v = GetValue(this, value); consent = WrappedSpec.IsValid(t, v); } catch (InvalidEntryException) { consent = new Veto(Resources.NakedObjects.InvalidEntry); } catch (Exception e) { consent = new Veto(e.Message); } return(new ConsentFacade(consent)); }
public string GetTitle(IObjectFacade objectFacade) { var enumFacet = WrappedSpec.GetFacet <IEnumFacet>(); if (enumFacet != null) { return(enumFacet.GetTitle(((ObjectFacade)objectFacade).WrappedNakedObject)); } var mask = WrappedSpec.GetFacet <IMaskFacet>(); if (mask == null) { return(objectFacade.TitleString); } var titleFacet = ((TypeFacade)objectFacade.Specification).WrappedValue.GetFacet <ITitleFacet>(); return(titleFacet.GetTitleWithMask(mask.Value, ((ObjectFacade)objectFacade).WrappedNakedObject, framework.NakedObjectManager)); }
public IObjectFacade GetDefault(IObjectFacade objectFacade) { return(ObjectFacade.Wrap(WrappedSpec.GetDefault(((ObjectFacade)objectFacade).WrappedNakedObject), FrameworkFacade, framework)); }
public bool DefaultTypeIsExplicit(IObjectFacade objectFacade) { return(WrappedSpec.GetDefaultType(((ObjectFacade)objectFacade).WrappedNakedObject) == TypeOfDefaultValue.Explicit); }
public IObjectFacade[] GetCompletions(IObjectFacade objectFacade, string autoCompleteParm) { return(WrappedSpec.GetCompletions(((ObjectFacade)objectFacade).WrappedNakedObject, autoCompleteParm).Select(no => ObjectFacade.Wrap(no, FrameworkFacade, framework)).Cast <IObjectFacade>().ToArray()); }
public string GetMaskedValue(IObjectFacade objectFacade) { return(WrappedSpec.GetMaskedValue(objectFacade, framework.NakedObjectManager)); }
public Tuple <string, ITypeFacade>[] GetChoicesParameters() { return(WrappedSpec.GetChoicesParameters().Select(WrapChoiceParm).ToArray()); }
public IObjectFacade GetValue(IObjectFacade target) { INakedObjectAdapter result = WrappedSpec.GetNakedObject(((ObjectFacade)target).WrappedNakedObject); return(ObjectFacade.Wrap(result, FrameworkFacade, framework)); }
public IConsentFacade IsUsable(IObjectFacade objectFacade) => new ConsentFacade(WrappedSpec.IsUsable(((ObjectFacade)objectFacade)?.WrappedNakedObject));
public bool IsVisible(IObjectFacade objectFacade) => WrappedSpec.IsVisible(((ObjectFacade)objectFacade)?.WrappedNakedObject);
public IConsentFacade IsUsable(IObjectFacade objectFacade) { return(new ConsentFacade(WrappedSpec.IsUsable(((ObjectFacade)objectFacade).WrappedNakedObject))); }
public bool IsVisible(IObjectFacade objectFacade) { return(WrappedSpec.IsVisible(((ObjectFacade)objectFacade).WrappedNakedObject)); }
public bool IsEager(IObjectFacade objectFacade) { return(((TypeFacade)objectFacade.Specification).WrappedValue.ContainsFacet <IEagerlyFacet>() || WrappedSpec.ContainsFacet <IEagerlyFacet>()); }
public override int GetHashCode() { return(WrappedSpec != null ? WrappedSpec.GetHashCode() : 0); }
public string GetMaskedValue(IObjectFacade objectFacade) => WrappedSpec.GetMaskedValue(objectFacade, framework.NakedObjectManager, framework.Session, framework.Persistor);
public IConsentFacade IsUsable(IObjectFacade target) { IConsent consent = WrappedSpec.IsUsable(((ObjectFacade)target).WrappedNakedObject); return(new ConsentFacade(consent)); }