Example #1
0
 public static JsConfigScope With(
     bool?convertObjectTypesIntoStringDictionary = null,
     bool?tryToParsePrimitiveTypeValues          = null,
     bool?tryToParseNumericType            = null,
     bool?includeNullValues                = null,
     bool?includeDefaultEnums              = null,
     bool?excludeTypeInfo                  = null,
     bool?includeTypeInfo                  = null,
     bool?emitCamelCaseNames               = null,
     bool?emitLowercaseUnderscoreNames     = null,
     DateHandler?dateHandler               = null,
     TimeSpanHandler?timeSpanHandler       = null,
     PropertyConvention?propertyConvention = null,
     bool?preferInterfaces                 = null,
     bool?throwOnDeserializationError      = null,
     string typeAttr = null,
     Func <Type, string> typeWriter = null,
     Func <string, Type> typeFinder = null,
     bool?treatEnumAsInteger        = null,
     bool?alwaysUseUtc        = null,
     bool?assumeUtc           = null,
     bool?appendUtcOffset     = null,
     bool?escapeUnicode       = null,
     bool?includePublicFields = null,
     bool?reuseStringBuffer   = null,
     int?maxDepth             = null,
     EmptyCtorFactoryDelegate modelFactory = null,
     string[] excludePropertyReferences    = null)
 {
     return(new JsConfigScope {
         ConvertObjectTypesIntoStringDictionary = convertObjectTypesIntoStringDictionary ?? sConvertObjectTypesIntoStringDictionary,
         TryToParsePrimitiveTypeValues = tryToParsePrimitiveTypeValues ?? sTryToParsePrimitiveTypeValues,
         TryToParseNumericType = tryToParseNumericType ?? sTryToParseNumericType,
         IncludeNullValues = includeNullValues ?? sIncludeNullValues,
         IncludeDefaultEnums = includeDefaultEnums ?? sIncludeDefaultEnums,
         ExcludeTypeInfo = excludeTypeInfo ?? sExcludeTypeInfo,
         IncludeTypeInfo = includeTypeInfo ?? sIncludeTypeInfo,
         EmitCamelCaseNames = emitCamelCaseNames ?? sEmitCamelCaseNames,
         EmitLowercaseUnderscoreNames = emitLowercaseUnderscoreNames ?? sEmitLowercaseUnderscoreNames,
         DateHandler = dateHandler ?? sDateHandler,
         TimeSpanHandler = timeSpanHandler ?? sTimeSpanHandler,
         PropertyConvention = propertyConvention ?? sPropertyConvention,
         PreferInterfaces = preferInterfaces ?? sPreferInterfaces,
         ThrowOnDeserializationError = throwOnDeserializationError ?? sThrowOnDeserializationError,
         TypeAttr = typeAttr ?? sTypeAttr,
         TypeWriter = typeWriter ?? sTypeWriter,
         TypeFinder = typeFinder ?? sTypeFinder,
         TreatEnumAsInteger = treatEnumAsInteger ?? sTreatEnumAsInteger,
         AlwaysUseUtc = alwaysUseUtc ?? sAlwaysUseUtc,
         AssumeUtc = assumeUtc ?? sAssumeUtc,
         AppendUtcOffset = appendUtcOffset ?? sAppendUtcOffset,
         EscapeUnicode = escapeUnicode ?? sEscapeUnicode,
         IncludePublicFields = includePublicFields ?? sIncludePublicFields,
         ReuseStringBuffer = reuseStringBuffer ?? sReuseStringBuffer,
         MaxDepth = maxDepth ?? sMaxDepth,
         ModelFactory = modelFactory ?? ModelFactory,
         ExcludePropertyReferences = excludePropertyReferences ?? sExcludePropertyReferences
     });
 }
Example #2
0
        public static void Reset()
        {
            foreach (var rawSerializeType in HasSerializeFn.ToArray())
            {
                Reset(rawSerializeType);
            }
            foreach (var rawSerializeType in HasIncludeDefaultValue.ToArray())
            {
                Reset(rawSerializeType);
            }
            foreach (var uniqueType in __uniqueTypes.ToArray())
            {
                Reset(uniqueType);
            }

            sModelFactory = ReflectionExtensions.GetConstructorMethodToCache;
            sTryToParsePrimitiveTypeValues          = null;
            sTryToParseNumericType                  = null;
            sConvertObjectTypesIntoStringDictionary = null;
            sIncludeNullValues            = null;
            sExcludeTypeInfo              = null;
            sEmitCamelCaseNames           = null;
            sEmitLowercaseUnderscoreNames = null;
            sDateHandler                 = null;
            sTimeSpanHandler             = null;
            sPreferInterfaces            = null;
            sThrowOnDeserializationError = null;
            sTypeAttr              = null;
            sJsonTypeAttrInObject  = null;
            sJsvTypeAttrInObject   = null;
            sTypeWriter            = null;
            sTypeFinder            = null;
            sTreatEnumAsInteger    = null;
            sAlwaysUseUtc          = null;
            sAssumeUtc             = null;
            sAppendUtcOffset       = null;
            sEscapeUnicode         = null;
            sIncludePublicFields   = null;
            sReuseStringBuffer     = null;
            HasSerializeFn         = new HashSet <Type>();
            HasIncludeDefaultValue = new HashSet <Type>();
            TreatValueAsRefTypes   = new HashSet <Type> {
                typeof(KeyValuePair <,>)
            };
            sPropertyConvention        = null;
            sExcludePropertyReferences = null;
            sExcludeTypes = new HashSet <Type> {
                typeof(Stream)
            };
            __uniqueTypes = new HashSet <Type>();
            sMaxDepth     = 50;
            sParsePrimitiveIntegerTypes       = null;
            sParsePrimitiveFloatingPointTypes = null;
            PlatformExtensions.ClearRuntimeAttributes();
            ReflectionExtensions.Reset();
            JsState.Reset();
        }
Example #3
0
            public ConfigScope()
            {
                bool?              convertObjectTypesIntoStringDictionary = new bool?();
                bool?              tryToParsePrimitiveTypeValues          = new bool?();
                bool?              tryToParseNumericType            = new bool?();
                ParseAsType?       parsePrimitiveFloatingPointTypes = new ParseAsType?();
                ParseAsType?       parsePrimitiveIntegerTypes       = new ParseAsType?();
                bool?              excludeDefaultValues             = new bool?();
                bool?              includeNullValues = new bool?();
                bool?              includeNullValuesInDictionaries = new bool?();
                bool?              includeDefaultEnums             = new bool?();
                bool?              excludeTypeInfo              = new bool?();
                bool?              includeTypeInfo              = new bool?();
                DateHandler?       nullable1                    = new DateHandler?(DateHandler.UnixTime);
                PropertyConvention?nullable2                    = new PropertyConvention?(PropertyConvention.Lenient);
                bool?              nullable3                    = new bool?(true);
                bool?              emitCamelCaseNames           = new bool?(false);
                bool?              emitLowercaseUnderscoreNames = nullable3;
                DateHandler?       dateHandler                  = nullable1;
                TimeSpanHandler?   timeSpanHandler              = new TimeSpanHandler?();
                PropertyConvention?propertyConvention           = nullable2;
                bool?              preferInterfaces             = new bool?();
                bool?              throwOnDeserializationError  = new bool?();
                // ISSUE: variable of the null type
                // ISSUE: variable of the null type
                // ISSUE: variable of the null type
                bool?treatEnumAsInteger     = new bool?();
                bool?skipDateTimeConversion = new bool?();
                bool?alwaysUseUtc           = new bool?();
                bool?assumeUtc           = new bool?();
                bool?appendUtcOffset     = new bool?();
                bool?escapeUnicode       = new bool?();
                bool?includePublicFields = new bool?();
                int? maxDepth            = new int?();

                // ISSUE: variable of the null type
                // ISSUE: variable of the null type
                this.jsConfigScope  = JsConfig.With(convertObjectTypesIntoStringDictionary, tryToParsePrimitiveTypeValues, tryToParseNumericType, parsePrimitiveFloatingPointTypes, parsePrimitiveIntegerTypes, excludeDefaultValues, includeNullValues, includeNullValuesInDictionaries, includeDefaultEnums, excludeTypeInfo, includeTypeInfo, emitCamelCaseNames, emitLowercaseUnderscoreNames, dateHandler, timeSpanHandler, propertyConvention, preferInterfaces, throwOnDeserializationError, (string)null, null, (Func <Type, string>)null, (Func <string, Type>)null, treatEnumAsInteger, skipDateTimeConversion, alwaysUseUtc, assumeUtc, appendUtcOffset, escapeUnicode, includePublicFields, maxDepth, (EmptyCtorFactoryDelegate)null, (string[])null);
                this.holdQsStrategy = QueryStringSerializer.ComplexTypeStrategy;
                QueryStringSerializer.ComplexTypeStrategy = new WriteComplexTypeDelegate(QueryStringStrategy.FormUrlEncoded);
            }
Example #4
0
        public static void Reset()
        {
            foreach (var rawSerializeType in HasSerializeFn.ToArray())
            {
                Reset(rawSerializeType);
            }
            foreach (var uniqueType in __uniqueTypes.ToArray())
            {
                Reset(uniqueType);
            }

            sModelFactory = ReflectionExtensions.GetConstructorMethodToCache;
            sTryToParsePrimitiveTypeValues = null;
		    sTryToParseNumericType = null;
            sConvertObjectTypesIntoStringDictionary = null;
            sIncludeNullValues = null;
            sExcludeTypeInfo = null;
            sEmitCamelCaseNames = null;
            sEmitLowercaseUnderscoreNames = null;
            sDateHandler = null;
            sTimeSpanHandler = null;
            sPreferInterfaces = null;
            sThrowOnDeserializationError = null;
            sTypeAttr = null;
            sJsonTypeAttrInObject = null;
            sJsvTypeAttrInObject = null;
            sTypeWriter = null;
            sTypeFinder = null;
			sTreatEnumAsInteger = null;
            sAlwaysUseUtc = null;
            sAssumeUtc = null;
            sAppendUtcOffset = null;
            sEscapeUnicode = null;
            sIncludePublicFields = null;
            HasSerializeFn = new HashSet<Type>();
            TreatValueAsRefTypes = new HashSet<Type> { typeof(KeyValuePair<,>) };
            sPropertyConvention = null;
            sExcludePropertyReferences = null;
            sExcludeTypes = new HashSet<Type> { typeof(Stream) };
            __uniqueTypes = new HashSet<Type>();
	        sMaxDepth = 50;
        }
Example #5
0
        public static JsConfigScope With(
            bool?convertObjectTypesIntoStringDictionary = null,
            bool?tryToParsePrimitiveTypeValues          = null,
            bool?tryToParseNumericType = null,
            ParseAsType?parsePrimitiveFloatingPointTypes = null,
            ParseAsType?parsePrimitiveIntegerTypes       = null,
            bool?excludeDefaultValues            = null,
            bool?includeNullValues               = null,
            bool?includeNullValuesInDictionaries = null,
            bool?includeDefaultEnums             = null,
            bool?excludeTypeInfo                  = null,
            bool?includeTypeInfo                  = null,
            bool?emitCamelCaseNames               = null,
            bool?emitLowercaseUnderscoreNames     = null,
            DateHandler?dateHandler               = null,
            TimeSpanHandler?timeSpanHandler       = null,
            PropertyConvention?propertyConvention = null,
            bool?preferInterfaces                 = null,
            bool?throwOnDeserializationError      = null,
            string typeAttr                = null,
            string dateTimeFormat          = null,
            Func <Type, string> typeWriter = null,
            Func <string, Type> typeFinder = null,
            bool?treatEnumAsInteger        = null,
            bool?skipDateTimeConversion    = null,
            bool?alwaysUseUtc              = null,
            bool?assumeUtc           = null,
            bool?appendUtcOffset     = null,
            bool?escapeUnicode       = null,
            bool?includePublicFields = null,
            int?maxDepth             = null,
            EmptyCtorFactoryDelegate modelFactory = null,
            string[] excludePropertyReferences    = null,
            bool?useSystemParseMethods            = null) //Unused
        {
            return(new JsConfigScope
            {
                ConvertObjectTypesIntoStringDictionary = convertObjectTypesIntoStringDictionary ?? Config.Instance.ConvertObjectTypesIntoStringDictionary,
                TryToParsePrimitiveTypeValues = tryToParsePrimitiveTypeValues ?? Config.Instance.TryToParsePrimitiveTypeValues,
                TryToParseNumericType = tryToParseNumericType ?? Config.Instance.TryToParseNumericType,

                ParsePrimitiveFloatingPointTypes = parsePrimitiveFloatingPointTypes ?? Config.Instance.ParsePrimitiveFloatingPointTypes,
                ParsePrimitiveIntegerTypes = parsePrimitiveIntegerTypes ?? Config.Instance.ParsePrimitiveIntegerTypes,

                ExcludeDefaultValues = excludeDefaultValues ?? Config.Instance.ExcludeDefaultValues,
                IncludeNullValues = includeNullValues ?? Config.Instance.IncludeNullValues,
                IncludeNullValuesInDictionaries = includeNullValuesInDictionaries ?? Config.Instance.IncludeNullValuesInDictionaries,
                IncludeDefaultEnums = includeDefaultEnums ?? Config.Instance.IncludeDefaultEnums,
                ExcludeTypeInfo = excludeTypeInfo ?? Config.Instance.ExcludeTypeInfo,
                IncludeTypeInfo = includeTypeInfo ?? Config.Instance.IncludeTypeInfo,
                EmitCamelCaseNames = emitCamelCaseNames ?? Config.Instance.EmitCamelCaseNames,
                EmitLowercaseUnderscoreNames = emitLowercaseUnderscoreNames ?? Config.Instance.EmitLowercaseUnderscoreNames,
                DateHandler = dateHandler ?? Config.Instance.DateHandler,
                TimeSpanHandler = timeSpanHandler ?? Config.Instance.TimeSpanHandler,
                PropertyConvention = propertyConvention ?? Config.Instance.PropertyConvention,
                PreferInterfaces = preferInterfaces ?? Config.Instance.PreferInterfaces,
                ThrowOnError = throwOnDeserializationError ?? Config.Instance.ThrowOnError,
                DateTimeFormat = dateTimeFormat ?? Config.Instance.DateTimeFormat,
                TypeAttr = typeAttr ?? Config.Instance.TypeAttr,
                TypeWriter = typeWriter ?? Config.Instance.TypeWriter,
                TypeFinder = typeFinder ?? Config.Instance.TypeFinder,
                TreatEnumAsInteger = treatEnumAsInteger ?? Config.Instance.TreatEnumAsInteger,
                SkipDateTimeConversion = skipDateTimeConversion ?? Config.Instance.SkipDateTimeConversion,
                AlwaysUseUtc = alwaysUseUtc ?? Config.Instance.AlwaysUseUtc,
                AssumeUtc = assumeUtc ?? Config.Instance.AssumeUtc,
                AppendUtcOffset = appendUtcOffset ?? Config.Instance.AppendUtcOffset,
                EscapeUnicode = escapeUnicode ?? Config.Instance.EscapeUnicode,
                IncludePublicFields = includePublicFields ?? Config.Instance.IncludePublicFields,
                MaxDepth = maxDepth ?? Config.Instance.MaxDepth,
                ModelFactory = modelFactory ?? Config.Instance.ModelFactory,
                ExcludePropertyReferences = excludePropertyReferences ?? Config.Instance.ExcludePropertyReferences,
            });
        }