示例#1
0
        /// <summary>
        /// Sets the date.
        /// </summary>
        /// <param name="currentElement">
        /// The current element.
        /// </param>
        /// <returns>
        /// Date object ViewModel.
        /// </returns>
        public static DateObjectModel SetDate(XElement argCurrentElement)
        {
            XElement tempElement;

            if (argCurrentElement is null)
            {
                // TODO fix this to return invalid date
                return(new DateObjectModelStr(string.Empty));
            }

            // check for date range
            try
            {
                tempElement = argCurrentElement.Element(ns + "daterange");
                if (tempElement != null)
                {
                    return(SetDateRange(tempElement));
                }

                // check for date span
                tempElement = argCurrentElement.Element(ns + "datespan");
                if (tempElement != null)
                {
                    return(SetDateSpan(tempElement));
                }

                // check for date val
                tempElement = argCurrentElement.Element(ns + "dateval");
                if (tempElement != null)
                {
                    return(SetDateVal(tempElement));
                }

                // check for datestr
                tempElement = argCurrentElement.Element(ns + "datestr");
                if (tempElement != null)
                {
                    DateObjectModelStr t = SetDateStr(tempElement);

                    return(t);
                }
            }
            catch (Exception e)
            {
                // TODO
                App.Current.Services.GetService <IErrorNotifications>().NotifyException("Error in SetDate", e);

                throw;
            }

            // TODO fix this if (tempDate is typeof( DateObjectModel) ) { // no date found tempDate
            // = null; }
            return(new DateObjectModelVal());
        }
示例#2
0
        /// <summary>
        /// Sets the date.
        /// </summary>
        /// <param name="currentElement">
        /// The current element.
        /// </param>
        /// <returns>
        /// Date object ViewModel.
        /// </returns>
        public DateObjectModel SetDate(XElement currentElement)
        {
            XElement tempElement;

            // check for date range
            try
            {
                tempElement = currentElement.Element(ns + "daterange");
                if (tempElement != null)
                {
                    return(SetDateRange(tempElement));
                }

                // check for date span
                tempElement = currentElement.Element(ns + "datespan");
                if (tempElement != null)
                {
                    return(SetDateSpan(tempElement));
                }

                // check for date val
                tempElement = currentElement.Element(ns + "dateval");
                if (tempElement != null)
                {
                    return(SetDateVal(tempElement));
                }

                // check for datestr
                tempElement = currentElement.Element(ns + "datestr");
                if (tempElement != null)
                {
                    DateObjectModelStr t = SetDateStr(tempElement);

                    return(t);
                }
            }
            catch (Exception e)
            {
                // TODO
                DataStore.CN.NotifyException("Error in SetDate", e);

                throw;
            }

            // TODO fix this if (tempDate is typeof( DateObjectModel) ) { // no date found tempDate
            // = null; }
            return(new DateObjectModelVal());
        }
        private void writeStr(ref Utf8JsonWriter argWriter, DateObjectModelStr argStr)
        {
            writeBasic(ref argWriter, argStr);

            argWriter.WriteString("GVal", argStr.GVal);
        }
        private DateObjectModelStr readStr(ref Utf8JsonReader argReader)
        {
            DateObjectModelStr returnDate = new DateObjectModelStr();

            while (argReader.Read())
            {
                if (argReader.TokenType == JsonTokenType.EndObject)
                {
                    return(returnDate);
                }

                if (argReader.TokenType == JsonTokenType.PropertyName)
                {
                    string propertyName = argReader.GetString();
                    argReader.Read();
                    switch (propertyName)
                    {
                    case "GVal":
                    {
                        returnDate.GVal = argReader.GetString();

                        break;
                    }

                    case "HLinkKey":
                    {
                        returnDate.HLinkKey.Value = argReader.GetString();
                        break;
                    }

                    case "ModelItemGlyph.Symbol":
                    {
                        returnDate.ModelItemGlyph.Symbol = argReader.GetString();
                        break;
                    }

                    case "ModelItemGlyph.SymbolColour":
                    {
                        returnDate.ModelItemGlyph.SymbolColour = Color.FromHex(Convert.ToString(argReader.GetString(), System.Globalization.CultureInfo.CurrentCulture));
                        break;
                    }

                    case "NotionalDate":
                    {
                        returnDate.NotionalDate = argReader.GetDateTime();
                        break;
                    }

                    case "Valid":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.Valid = argValue;
                        break;
                    }

                    case "ValidDay":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.ValidDay = argValue;
                        break;
                    }

                    case "ValidMonth":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.ValidMonth = argValue;
                        break;
                    }

                    case "ValidYear":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.ValidYear = argValue;
                        break;
                    }

                    default:
                    {
                        throw new JsonException();
                    }
                    }
                }
            }

            return(returnDate);
        }
示例#5
0
        public void InitYearOnly()
        {
            string aVal = "1939";

            testVal = new DateObjectModelStr(aVal);
        }
示例#6
0
        public void InitYearMonthDay()
        {
            string aVal = "1939-01-01";

            testVal = new DateObjectModelStr(aVal);
        }