Exemplo n.º 1
0
        public static IJsonValue CleanReferences(this IField field, IJsonValue value, ICollection <Guid> oldReferences)
        {
            if (IsNull(value))
            {
                return(value);
            }

            return(ReferencesCleaner.CleanReferences(field, value, oldReferences));
        }
Exemplo n.º 2
0
        public static JToken CleanReferences(this IField field, JToken value, ICollection <Guid> oldReferences)
        {
            if (value.IsNull())
            {
                return(value);
            }

            return(ReferencesCleaner.CleanReferences(field, value, oldReferences));
        }
Exemplo n.º 3
0
        public static ValueConverter CleanReferences(HashSet <DomainId>?validIds = null)
        {
            if (validIds == null)
            {
                return(ValueConverters.Noop);
            }

            return((value, field, parent) =>
            {
                if (value.Type == JsonValueType.Null)
                {
                    return value;
                }

                return ReferencesCleaner.Cleanup(field, value, validIds);
            });
        }
Exemplo n.º 4
0
        public static ValueConverter CleanReferences(HashSet <Guid>?validIds = null)
        {
            if (validIds == null)
            {
                return(ValueConverters.Noop);
            }

            var cleaner = new ReferencesCleaner(validIds);

            return((value, field, parent) =>
            {
                if (value.Type == JsonValueType.Null)
                {
                    return value;
                }

                cleaner.SetValue(value);

                return field.Accept(cleaner);
            });
        }