Example #1
0
        // Add JMU
        /// <summary>
        /// Recursive Look for the value the last Node. Does NOT change the database.
        /// </summary>
        /// <param name="Parent_node_id"></param>
        /// <param name="p_Path"></param>
        /// <returns>The value of the Option searched for</returns>
        private string recursiveValueOptionTree(int Parent_node_id, string p_Path)
        {
            string       path1, path2, sql, value;
            int          DelimeterSize, parent_id;
            DbDataReader OptionReader;

            DelimeterSize = p_Path.IndexOf("/");
            if (DelimeterSize == -1)
            {
                #region Search for value
                sql = " Select value.string " +
                      " FROM option_map map, option_name name, option_values value " +
                      " WHERE map.parent_node_id = " + Parent_node_id +
                      " AND   map.name_id = name.name_id " +
                      " AND   name.name = '" + p_Path + "'" +
                      " AND   map.value_id = value.value_id ";
                OptionReader = _dsn.KindExecuteReader(sql);
                if (!(OptionReader.HasRows))
                {
                    value = null;
                }
                else
                {
                    value = OptionReader.GetString(OptionReader.GetOrdinal("string"));
                }
                OptionReader.Close();
                OptionReader = null;
                return(value);

                #endregion
            }
            else
            {
                #region Search Recursive ChildNode
                path1 = p_Path.Substring(0, DelimeterSize);
                path2 = p_Path.Substring(DelimeterSize + 1);

                sql = " Select map.node_id " +
                      " FROM option_map map, option_name name " +
                      " WHERE map.parent_node_id = " + Parent_node_id +
                      " AND   map.name_id = name.name_id " +
                      " AND   name.name = '" + path1 + "'";
                OptionReader = _dsn.KindExecuteReader(sql);
                if (!(OptionReader.HasRows))
                {
                    OptionReader.Close();
                    OptionReader = null;
                    return(null);
                }
                else
                {
                    parent_id = OptionReader.GetInt32(OptionReader.GetOrdinal("node_id"));
                    OptionReader.Close();
                    OptionReader = null;
                    return(recursiveValueOptionTree(parent_id, path2));
                }
                #endregion
            }
        }
Example #2
0
        static IEnumerable <DateTime> ExecuteWeekCommand(IEnumerable <string> args)
        {
            var command   = new OptionReader <WeekCommand>().Parse(args);
            var dayOfWeek = (DayOfWeek)(command.Day - 1);
            var seed      = NextDayOfWeek(dayOfWeek, command.Seed);

            return(EnumerateDates(seed.AddDays(-7), d => d.AddDays(7)).Take(command.Count));
        }
Example #3
0
        public void read_from_one_line()
        {
            var system = new FileSystem();


            var path = directory.AppendPath("opts1.txt");

            system.WriteStringToFile(path, "-f -a -b");

            OptionReader.Read(path)
            .ShouldBe("-f -a -b");
        }
Example #4
0
        static IEnumerable <DateTime> ExecuteYearCommand(IEnumerable <string> args)
        {
            var command = new OptionReader <YearCommand>().Parse(args);
            int seedYear;

            if (command.Seed.DayOfYear > command.Day)
            {
                seedYear = command.Seed.Year + 1;
            }
            else
            {
                seedYear = command.Seed.Year;
            }

            return(Enumerable.Range(0, command.Count)
                   .Select(n => new DateTime(seedYear + n, 1, 1).AddDays(command.Day - 1)));
        }
Example #5
0
        static IEnumerable <DateTime> ExecuteMonthCommand(IEnumerable <string> args)
        {
            var command   = new OptionReader <MonthCommand>().Parse(args);
            var dayOfWeek = (DayOfWeek)(command.Day - 1);

            return(EnumerateDates(new DateTime(command.Seed.Year, command.Seed.Month, 1), month => month.AddMonths(1))
                   .Select(month =>
            {
                var dateRange = EnumerateDates(month, day => day.AddDays(1))
                                .Where(d => d.DayOfWeek == dayOfWeek)
                                .TakeWhile(d => d.Month == month.Month);

                return dateRange.Skip(command.Ord - 1)
                .DefaultIfEmpty(dateRange.Last())
                .FirstOrDefault();
            }).Take(command.Count));
        }
Example #6
0
        private bool ReadOpt(IEnumerable <PrefixedDefaultValueArgument> options, CommandArgs commandArgs, Dictionary <string, ArrayAggregator> optionValues, ArrayReader <string> args, string arg)
        {
            var opt = options.FirstOrDefault(
                option => ArgMatcher.GetMatcher(_cliConfig.Dialect).IsOptionMatching(option, arg)
                );

            if (opt == null)
            {
                return(false);
            }

            if (!opt.RequireValue)
            {
                if (opt.ValueType == typeof(bool))
                {
                    commandArgs.AddOptionValueProvider(opt.Name, new ConstValueProvider(!(bool)opt.DefaultValue));
                }

                return(true);
            }

            var optionValue = OptionReader
                              .GetReader(_cliConfig.Dialect.OptionValueMode)
                              .ReadValue(args, arg);

            if (opt.ValueType.IsArray)
            {
                if (optionValues.ContainsKey(opt.Name))
                {
                    optionValues[opt.Name].Add(_valueConverter.ConvertValueToExpectedType(optionValue, opt.ValueType.GetElementType(), opt.Converter));
                }
                else if (opt.ValueType.IsArray)
                {
                    optionValues.Add(opt.Name,
                                     new ArrayAggregator(_valueConverter.ConvertValueToExpectedType(optionValue, opt.ValueType.GetElementType(), opt.Converter)));
                }
            }
            else
            {
                commandArgs.AddOptionValueProvider(opt.Name,
                                                   new ConstValueProvider(_valueConverter.ConvertValueToExpectedType(optionValue, opt.ValueType, opt.Converter)));
            }

            return(true);
        }
Example #7
0
        private string applyOptions(string commandLine)
        {
            if (OptionsFile.IsEmpty())
            {
                return(commandLine);
            }

#if NET451
            var path = AppDomain.CurrentDomain.BaseDirectory.AppendPath(OptionsFile);
#else
            var path = AppContext.BaseDirectory.AppendPath(OptionsFile);
#endif

            if (File.Exists(path))
            {
                return($"{OptionReader.Read(path)} {commandLine}");
            }
            return(commandLine);
        }
Example #8
0
        public void read_from_multiple_lines()
        {
            var path = directory.AppendPath("opts2.txt");

            using (var stream = new FileStream(path, FileMode.Create))
            {
                var writer = new StreamWriter(stream);

                writer.WriteLine("--color Blue");
                writer.WriteLine("--size Medium    ");
                writer.WriteLine("   --direction East");

                writer.Flush();

                writer.Dispose();
            }

            OptionReader.Read(path)
            .ShouldBe("--color Blue --size Medium --direction East");
        }
Example #9
0
        private IEnumerable <string> readOptions()
        {
            if (OptionsFile.IsEmpty())
            {
                return(new string[0]);
            }

#if NET451
            var path = AppDomain.CurrentDomain.BaseDirectory.AppendPath(OptionsFile);
#else
            var path = AppContext.BaseDirectory.AppendPath(OptionsFile);
#endif

            if (File.Exists(path))
            {
                var options = OptionReader.Read(path);

                return(StringTokenizer.Tokenize(options));
            }

            return(new string[0]);
        }
        public static IBlogClientOptions ApplyOptionOverrides(OptionReader optionReader, IBlogClientOptions existingOptions, bool includeIrregularities)
        {
            BlogClientOptions clientOptions = new BlogClientOptions();

            // Protocol capabilities
            clientOptions.SupportsPostAsDraft = ReadBool(optionReader("supportsPostAsDraft"), existingOptions.SupportsPostAsDraft);
            clientOptions.SupportsFileUpload = ReadBool(optionReader("supportsFileUpload"), existingOptions.SupportsFileUpload);
            clientOptions.SupportsExtendedEntries = ReadBool(optionReader("supportsExtendedEntries"), existingOptions.SupportsExtendedEntries);
            clientOptions.SupportsCustomDate = ReadBool(optionReader("supportsCustomDate"), existingOptions.SupportsCustomDate);
            clientOptions.SupportsCustomDateUpdate = ReadBool(optionReader("supportsCustomDateUpdate"), existingOptions.SupportsCustomDateUpdate);
            clientOptions.SupportsHttps = ReadBool(optionReader("supportsHttps"), existingOptions.SupportsHttps);
            clientOptions.SupportsCategories = ReadBool(optionReader(SUPPORTS_CATEGORIES), existingOptions.SupportsCategories);
            clientOptions.SupportsCategoriesInline = ReadBool(optionReader("supportsCategoriesInline"), existingOptions.SupportsCategoriesInline);
            clientOptions.SupportsMultipleCategories = ReadBool(optionReader("supportsMultipleCategories"), existingOptions.SupportsMultipleCategories);
            clientOptions.SupportsHierarchicalCategories = ReadBool(optionReader("supportsHierarchicalCategories"), existingOptions.SupportsHierarchicalCategories);
            clientOptions.SupportsNewCategories = ReadBool(optionReader(SUPPORTS_NEW_CATEGORIES), existingOptions.SupportsNewCategories);
            clientOptions.SupportsNewCategoriesInline = ReadBool(optionReader("supportsNewCategoriesInline"), existingOptions.SupportsNewCategoriesInline);
            clientOptions.SupportsSuggestCategories = ReadBool(optionReader("supportsSuggestCategories"), existingOptions.SupportsSuggestCategories);
            clientOptions.CategoryScheme = ReadText(optionReader(CATEGORY_SCHEME), existingOptions.CategoryScheme);
            clientOptions.SupportsKeywords = ReadBool(optionReader("supportsKeywords"), existingOptions.SupportsKeywords);
            clientOptions.SupportsGetKeywords = ReadBool(optionReader("supportsGetTags"), existingOptions.SupportsGetKeywords);
            clientOptions.SupportsCommentPolicy = ReadBool(optionReader("supportsCommentPolicy"), existingOptions.SupportsCommentPolicy);
            clientOptions.SupportsPingPolicy = ReadBool(optionReader("supportsPingPolicy"), existingOptions.SupportsPingPolicy);
            clientOptions.SupportsAuthor = ReadBool(optionReader("supportsAuthor"), existingOptions.SupportsAuthor);
            clientOptions.SupportsSlug = ReadBool(optionReader("supportsSlug"), existingOptions.SupportsSlug);
            clientOptions.SupportsPassword = ReadBool(optionReader("supportsPassword"), existingOptions.SupportsPassword);
            clientOptions.SupportsExcerpt = ReadBool(optionReader("supportsExcerpt"), existingOptions.SupportsExcerpt);
            clientOptions.SupportsTrackbacks = ReadBool(optionReader("supportsTrackbacks"), existingOptions.SupportsTrackbacks);
            clientOptions.SupportsPages = ReadBool(optionReader("supportsPages"), existingOptions.SupportsPages);
            clientOptions.SupportsPageParent = ReadBool(optionReader("supportsPageParent"), existingOptions.SupportsPageParent);
            clientOptions.SupportsPageOrder = ReadBool(optionReader("supportsPageOrder"), existingOptions.SupportsPageOrder);
            clientOptions.SupportsPageTrackbacks = ReadBool(optionReader("supportsPageTrackbacks"), existingOptions.SupportsPageTrackbacks);

            // Writer capabilities
            clientOptions.LinkToSkyDriveSelfPage = ReadBool(optionReader("linkToSkyDriveSelfPage"), existingOptions.LinkToSkyDriveSelfPage);
            clientOptions.RequiresHtmlTitles = ReadBool(optionReader("requiresHtmlTitles"), existingOptions.RequiresHtmlTitles);
            clientOptions.ReturnsHtmlTitlesOnGet = ReadSupportsFeature(optionReader("returnsHtmlTitlesOnGet"), existingOptions.ReturnsHtmlTitlesOnGet);
            clientOptions.SupportsEmptyTitles = ReadBool(optionReader("supportsEmptyTitles"), existingOptions.SupportsEmptyTitles);
            clientOptions.SupportsScripts = ReadSupportsFeature(optionReader(SUPPORTS_SCRIPTS), existingOptions.SupportsScripts);
            clientOptions.SupportsEmbeds = ReadSupportsFeature(optionReader(SUPPORTS_EMBEDS), existingOptions.SupportsEmbeds);
            clientOptions.SupportsImageUpload = ReadSupportsFeature(optionReader("supportsImageUpload"), existingOptions.SupportsImageUpload);
            clientOptions.DefaultView = ReadText(optionReader("defaultView"), existingOptions.DefaultView);
            clientOptions.CharacterSet = ReadText(optionReader(CHARACTER_SET), existingOptions.CharacterSet);
            clientOptions.RequiresXHTML = ReadBool(optionReader(REQUIRES_XHTML), existingOptions.RequiresXHTML);
            clientOptions.DhtmlImageViewer = ReadText(optionReader(DHTML_IMAGE_VIEWER), existingOptions.DhtmlImageViewer);
            clientOptions.PostBodyBackgroundColor = ReadInt(optionReader(POST_BODY_BACKGROUND_COLOR), existingOptions.PostBodyBackgroundColor);
            clientOptions.MaxCategoryNameLength = ReadInt(optionReader("maxCategoryNameLength"), existingOptions.MaxCategoryNameLength);
            clientOptions.SupportsAutoUpdate = ReadBool(optionReader("supportsAutoUpdate"), existingOptions.SupportsAutoUpdate);
            clientOptions.InvalidPostIdFaultCodePattern = ReadText(optionReader("invalidPostIdFaultCodePattern"), existingOptions.InvalidPostIdFaultCodePattern);
            clientOptions.InvalidPostIdFaultStringPattern = ReadText(optionReader("invalidPostIdFaultStringPattern"), existingOptions.InvalidPostIdFaultStringPattern);
            clientOptions.IsRTLTemplate = ReadBool(optionReader("templateIsRTL"), existingOptions.IsRTLTemplate);
            clientOptions.MaxPostTitleLength = ReadInt(optionReader("maxPostTitleLength"), existingOptions.MaxPostTitleLength);

            // Weblog
            clientOptions.HomepageLinkText = ReadText(optionReader("homepageLinkText"), existingOptions.HomepageLinkText);
            clientOptions.AdminLinkText = ReadText(optionReader("adminLinkText"), existingOptions.AdminLinkText);
            clientOptions.AdminUrl = ReadText(optionReader("adminUrl"), existingOptions.AdminUrl);
            clientOptions.PostEditingUrl = ReadText(optionReader("postEditingUrl"), existingOptions.PostEditingUrl);
            clientOptions.PostEditingUrlPostIdPattern = ReadText(optionReader("postEditingUrlPostIdPattern"), existingOptions.PostEditingUrlPostIdPattern);
            clientOptions.ImagePostingUrl = ReadText(optionReader(IMAGE_ENDPOINT), existingOptions.ImagePostingUrl);
            clientOptions.ServiceName = ReadText(optionReader("serviceName"), existingOptions.ServiceName);

            // Irregularities
            if (includeIrregularities)
            {
                clientOptions.CommentPolicyAsBoolean = ReadBool(optionReader("commentPolicyAsBoolean"), existingOptions.CommentPolicyAsBoolean);
                clientOptions.AllowPolicyFalseValue = ReadInt(optionReader("allowPolicyFalseValue"), existingOptions.AllowPolicyFalseValue);
                clientOptions.MaxRecentPosts = ReadInt(optionReader("maxRecentPosts"), existingOptions.MaxRecentPosts);
                clientOptions.ContentFilter = ReadText(optionReader("contentFilter"), existingOptions.ContentFilter);
                clientOptions.PermalinkFormat = ReadText(optionReader("permalinkFormat"), existingOptions.PermalinkFormat);
                clientOptions.PostDateFormat = ReadText(optionReader("postDateFormat"), existingOptions.PostDateFormat);
                clientOptions.FileUploadNameFormat = ReadText(optionReader("fileUploadNameFormat"), existingOptions.FileUploadNameFormat);
                clientOptions.UseLocalTime = ReadBool(optionReader("useLocalTime"), existingOptions.UseLocalTime);
                clientOptions.SupportsPostSynchronization = ReadBool(optionReader("supportsPostSynchronization"), existingOptions.SupportsPostSynchronization);
                clientOptions.TrackbackDelimiter = ReadTrackbackDelimiter(optionReader("trackbackDelimiter"), existingOptions.TrackbackDelimiter);
                clientOptions.FuturePublishDateWarning = ReadBool(optionReader("futurePublishDateWarning"), existingOptions.FuturePublishDateWarning);
                clientOptions.UsePicasaImgMaxAlways = ReadBool(optionReader("usePicasaImgMaxAlways"), existingOptions.UsePicasaImgMaxAlways);
                clientOptions.UsePicasaS1600h = ReadBool(optionReader("usePicasaS1600h"), existingOptions.UsePicasaS1600h);
                clientOptions.KeywordsAsTags = ReadBool(optionReader("keywordsAsTags"), existingOptions.KeywordsAsTags);
            }
            else
            {
                clientOptions.CommentPolicyAsBoolean = existingOptions.CommentPolicyAsBoolean;
                clientOptions.AllowPolicyFalseValue = existingOptions.AllowPolicyFalseValue;
                clientOptions.MaxRecentPosts = existingOptions.MaxRecentPosts;
                clientOptions.ContentFilter = existingOptions.ContentFilter;
                clientOptions.PermalinkFormat = existingOptions.PermalinkFormat;
                clientOptions.PostDateFormat = existingOptions.PostDateFormat;
                clientOptions.FileUploadNameFormat = existingOptions.FileUploadNameFormat;
                clientOptions.UseLocalTime = existingOptions.UseLocalTime;
                clientOptions.SupportsPostSynchronization = existingOptions.SupportsPostSynchronization;
                clientOptions.TrackbackDelimiter = existingOptions.TrackbackDelimiter;
                clientOptions.FuturePublishDateWarning = existingOptions.FuturePublishDateWarning;
                clientOptions.UsePicasaImgMaxAlways = existingOptions.UsePicasaImgMaxAlways;
                clientOptions.UsePicasaS1600h = existingOptions.UsePicasaS1600h;
                clientOptions.KeywordsAsTags = existingOptions.KeywordsAsTags;
            }

            // return options
            return clientOptions;
        }
 public static IBlogClientOptions ApplyOptionOverrides(OptionReader optionReader, IBlogClientOptions existingOptions)
 {
     return ApplyOptionOverrides(optionReader, existingOptions, true);
 }
        public static IBlogClientOptions ApplyOptionOverrides(OptionReader optionReader, IBlogClientOptions existingOptions, bool includeIrregularities)
        {
            BlogClientOptions clientOptions = new BlogClientOptions();

            // Protocol capabilities
            clientOptions.SupportsPostAsDraft            = ReadBool(optionReader("supportsPostAsDraft"), existingOptions.SupportsPostAsDraft);
            clientOptions.SupportsFileUpload             = ReadBool(optionReader("supportsFileUpload"), existingOptions.SupportsFileUpload);
            clientOptions.SupportsExtendedEntries        = ReadBool(optionReader("supportsExtendedEntries"), existingOptions.SupportsExtendedEntries);
            clientOptions.SupportsCustomDate             = ReadBool(optionReader("supportsCustomDate"), existingOptions.SupportsCustomDate);
            clientOptions.SupportsCustomDateUpdate       = ReadBool(optionReader("supportsCustomDateUpdate"), existingOptions.SupportsCustomDateUpdate);
            clientOptions.SupportsHttps                  = ReadBool(optionReader("supportsHttps"), existingOptions.SupportsHttps);
            clientOptions.SupportsCategories             = ReadBool(optionReader(SUPPORTS_CATEGORIES), existingOptions.SupportsCategories);
            clientOptions.SupportsCategoriesInline       = ReadBool(optionReader("supportsCategoriesInline"), existingOptions.SupportsCategoriesInline);
            clientOptions.SupportsMultipleCategories     = ReadBool(optionReader("supportsMultipleCategories"), existingOptions.SupportsMultipleCategories);
            clientOptions.SupportsHierarchicalCategories = ReadBool(optionReader("supportsHierarchicalCategories"), existingOptions.SupportsHierarchicalCategories);
            clientOptions.SupportsNewCategories          = ReadBool(optionReader(SUPPORTS_NEW_CATEGORIES), existingOptions.SupportsNewCategories);
            clientOptions.SupportsNewCategoriesInline    = ReadBool(optionReader("supportsNewCategoriesInline"), existingOptions.SupportsNewCategoriesInline);
            clientOptions.SupportsSuggestCategories      = ReadBool(optionReader("supportsSuggestCategories"), existingOptions.SupportsSuggestCategories);
            clientOptions.CategoryScheme                 = ReadText(optionReader(CATEGORY_SCHEME), existingOptions.CategoryScheme);
            clientOptions.SupportsKeywords               = ReadBool(optionReader("supportsKeywords"), existingOptions.SupportsKeywords);
            clientOptions.SupportsGetKeywords            = ReadBool(optionReader("supportsGetTags"), existingOptions.SupportsGetKeywords);
            clientOptions.SupportsCommentPolicy          = ReadBool(optionReader("supportsCommentPolicy"), existingOptions.SupportsCommentPolicy);
            clientOptions.SupportsPingPolicy             = ReadBool(optionReader("supportsPingPolicy"), existingOptions.SupportsPingPolicy);
            clientOptions.SupportsAuthor                 = ReadBool(optionReader("supportsAuthor"), existingOptions.SupportsAuthor);
            clientOptions.SupportsSlug           = ReadBool(optionReader("supportsSlug"), existingOptions.SupportsSlug);
            clientOptions.SupportsPassword       = ReadBool(optionReader("supportsPassword"), existingOptions.SupportsPassword);
            clientOptions.SupportsExcerpt        = ReadBool(optionReader("supportsExcerpt"), existingOptions.SupportsExcerpt);
            clientOptions.SupportsTrackbacks     = ReadBool(optionReader("supportsTrackbacks"), existingOptions.SupportsTrackbacks);
            clientOptions.SupportsPages          = ReadBool(optionReader("supportsPages"), existingOptions.SupportsPages);
            clientOptions.SupportsPageParent     = ReadBool(optionReader("supportsPageParent"), existingOptions.SupportsPageParent);
            clientOptions.SupportsPageOrder      = ReadBool(optionReader("supportsPageOrder"), existingOptions.SupportsPageOrder);
            clientOptions.SupportsPageTrackbacks = ReadBool(optionReader("supportsPageTrackbacks"), existingOptions.SupportsPageTrackbacks);

            // Writer capabilities
            clientOptions.LinkToSkyDriveSelfPage          = ReadBool(optionReader("linkToSkyDriveSelfPage"), existingOptions.LinkToSkyDriveSelfPage);
            clientOptions.RequiresHtmlTitles              = ReadBool(optionReader("requiresHtmlTitles"), existingOptions.RequiresHtmlTitles);
            clientOptions.ReturnsHtmlTitlesOnGet          = ReadSupportsFeature(optionReader("returnsHtmlTitlesOnGet"), existingOptions.ReturnsHtmlTitlesOnGet);
            clientOptions.SupportsEmptyTitles             = ReadBool(optionReader("supportsEmptyTitles"), existingOptions.SupportsEmptyTitles);
            clientOptions.SupportsScripts                 = ReadSupportsFeature(optionReader(SUPPORTS_SCRIPTS), existingOptions.SupportsScripts);
            clientOptions.SupportsEmbeds                  = ReadSupportsFeature(optionReader(SUPPORTS_EMBEDS), existingOptions.SupportsEmbeds);
            clientOptions.SupportsImageUpload             = ReadSupportsFeature(optionReader("supportsImageUpload"), existingOptions.SupportsImageUpload);
            clientOptions.DefaultView                     = ReadText(optionReader("defaultView"), existingOptions.DefaultView);
            clientOptions.CharacterSet                    = ReadText(optionReader(CHARACTER_SET), existingOptions.CharacterSet);
            clientOptions.RequiresXHTML                   = ReadBool(optionReader(REQUIRES_XHTML), existingOptions.RequiresXHTML);
            clientOptions.DhtmlImageViewer                = ReadText(optionReader(DHTML_IMAGE_VIEWER), existingOptions.DhtmlImageViewer);
            clientOptions.PostBodyBackgroundColor         = ReadInt(optionReader(POST_BODY_BACKGROUND_COLOR), existingOptions.PostBodyBackgroundColor);
            clientOptions.MaxCategoryNameLength           = ReadInt(optionReader("maxCategoryNameLength"), existingOptions.MaxCategoryNameLength);
            clientOptions.SupportsAutoUpdate              = ReadBool(optionReader("supportsAutoUpdate"), existingOptions.SupportsAutoUpdate);
            clientOptions.InvalidPostIdFaultCodePattern   = ReadText(optionReader("invalidPostIdFaultCodePattern"), existingOptions.InvalidPostIdFaultCodePattern);
            clientOptions.InvalidPostIdFaultStringPattern = ReadText(optionReader("invalidPostIdFaultStringPattern"), existingOptions.InvalidPostIdFaultStringPattern);
            clientOptions.IsRTLTemplate                   = ReadBool(optionReader("templateIsRTL"), existingOptions.IsRTLTemplate);
            clientOptions.MaxPostTitleLength              = ReadInt(optionReader("maxPostTitleLength"), existingOptions.MaxPostTitleLength);

            // Weblog
            clientOptions.HomepageLinkText            = ReadText(optionReader("homepageLinkText"), existingOptions.HomepageLinkText);
            clientOptions.AdminLinkText               = ReadText(optionReader("adminLinkText"), existingOptions.AdminLinkText);
            clientOptions.AdminUrl                    = ReadText(optionReader("adminUrl"), existingOptions.AdminUrl);
            clientOptions.PostEditingUrl              = ReadText(optionReader("postEditingUrl"), existingOptions.PostEditingUrl);
            clientOptions.PostEditingUrlPostIdPattern = ReadText(optionReader("postEditingUrlPostIdPattern"), existingOptions.PostEditingUrlPostIdPattern);
            clientOptions.ImagePostingUrl             = ReadText(optionReader(IMAGE_ENDPOINT), existingOptions.ImagePostingUrl);
            clientOptions.ServiceName                 = ReadText(optionReader("serviceName"), existingOptions.ServiceName);

            // Irregularities
            if (includeIrregularities)
            {
                clientOptions.CommentPolicyAsBoolean      = ReadBool(optionReader("commentPolicyAsBoolean"), existingOptions.CommentPolicyAsBoolean);
                clientOptions.AllowPolicyFalseValue       = ReadInt(optionReader("allowPolicyFalseValue"), existingOptions.AllowPolicyFalseValue);
                clientOptions.MaxRecentPosts              = ReadInt(optionReader("maxRecentPosts"), existingOptions.MaxRecentPosts);
                clientOptions.ContentFilter               = ReadText(optionReader("contentFilter"), existingOptions.ContentFilter);
                clientOptions.PermalinkFormat             = ReadText(optionReader("permalinkFormat"), existingOptions.PermalinkFormat);
                clientOptions.PostDateFormat              = ReadText(optionReader("postDateFormat"), existingOptions.PostDateFormat);
                clientOptions.FileUploadNameFormat        = ReadText(optionReader("fileUploadNameFormat"), existingOptions.FileUploadNameFormat);
                clientOptions.UseLocalTime                = ReadBool(optionReader("useLocalTime"), existingOptions.UseLocalTime);
                clientOptions.SupportsPostSynchronization = ReadBool(optionReader("supportsPostSynchronization"), existingOptions.SupportsPostSynchronization);
                clientOptions.TrackbackDelimiter          = ReadTrackbackDelimiter(optionReader("trackbackDelimiter"), existingOptions.TrackbackDelimiter);
                clientOptions.FuturePublishDateWarning    = ReadBool(optionReader("futurePublishDateWarning"), existingOptions.FuturePublishDateWarning);
                clientOptions.UsePicasaImgMaxAlways       = ReadBool(optionReader("usePicasaImgMaxAlways"), existingOptions.UsePicasaImgMaxAlways);
                clientOptions.UsePicasaS1600h             = ReadBool(optionReader("usePicasaS1600h"), existingOptions.UsePicasaS1600h);
                clientOptions.KeywordsAsTags              = ReadBool(optionReader("keywordsAsTags"), existingOptions.KeywordsAsTags);
            }
            else
            {
                clientOptions.CommentPolicyAsBoolean      = existingOptions.CommentPolicyAsBoolean;
                clientOptions.AllowPolicyFalseValue       = existingOptions.AllowPolicyFalseValue;
                clientOptions.MaxRecentPosts              = existingOptions.MaxRecentPosts;
                clientOptions.ContentFilter               = existingOptions.ContentFilter;
                clientOptions.PermalinkFormat             = existingOptions.PermalinkFormat;
                clientOptions.PostDateFormat              = existingOptions.PostDateFormat;
                clientOptions.FileUploadNameFormat        = existingOptions.FileUploadNameFormat;
                clientOptions.UseLocalTime                = existingOptions.UseLocalTime;
                clientOptions.SupportsPostSynchronization = existingOptions.SupportsPostSynchronization;
                clientOptions.TrackbackDelimiter          = existingOptions.TrackbackDelimiter;
                clientOptions.FuturePublishDateWarning    = existingOptions.FuturePublishDateWarning;
                clientOptions.UsePicasaImgMaxAlways       = existingOptions.UsePicasaImgMaxAlways;
                clientOptions.UsePicasaS1600h             = existingOptions.UsePicasaS1600h;
                clientOptions.KeywordsAsTags              = existingOptions.KeywordsAsTags;
            }

            // return options
            return(clientOptions);
        }
 public static IBlogClientOptions ApplyOptionOverrides(OptionReader optionReader, IBlogClientOptions existingOptions)
 {
     return(ApplyOptionOverrides(optionReader, existingOptions, true));
 }
Example #14
0
        // Add JMU
        /// <summary>
        /// Recursive Look for the value the last Node. Make Changes in the database.
        /// </summary>
        /// <param name="Parent_node_id"></param>
        /// <param name="p_Path"></param>
        /// <returns>The value of the Option searched for</returns>
        private string recursiveSetValueOptionTree(int Parent_node_id, string p_Path, string Default_value, string Default_Description)
        {
            string       path1, path2, sql, value;
            int          DelimeterSize, parent_id;
            DbDataReader OptionReader;

            DelimeterSize = p_Path.IndexOf("/");
            if (DelimeterSize == -1)
            {
                #region Search for value
                sql = " Select value.value_id " +
                      " FROM option_map map, option_name name, option_values value " +
                      " WHERE map.parent_node_id = " + Parent_node_id +
                      " AND   map.name_id = name.name_id " +
                      " AND   name.name = '" + p_Path + "'" +
                      " AND   map.value_id = value.value_id ";

                OptionReader = _dsn.KindExecuteReader(sql);
                if (!(OptionReader.HasRows))
                {
                    OptionReader.Close();
                    OptionReader = null;
                    int name_id  = GetNameID(p_Path);
                    int value_id = InsertValue(Default_value);
                    InsertOptionNode(Parent_node_id, name_id, Default_Description, value_id);
                    value = Default_value;
                }
                else
                {
                    value = OptionReader.GetString(OptionReader.GetOrdinal("value_id"));
                    OptionReader.Close();
                    OptionReader = null;

                    sql = " UPDATE option_values " +
                          " SET string = '" + Default_value + "' " +
                          " WHERE value_id = " + value;

                    _dsn.KindExecuteNonQuery(sql);
                }

                return(value);

                #endregion
            }
            else
            {
                #region Search Recursive ChildNode
                path1 = p_Path.Substring(0, DelimeterSize);
                path2 = p_Path.Substring(DelimeterSize + 1);

                sql = " Select map.node_id " +
                      " FROM option_map map, option_name name " +
                      " WHERE map.parent_node_id = " + Parent_node_id +
                      " AND   map.name_id = name.name_id " +
                      " AND   name.name = '" + path1 + "'";
                OptionReader = _dsn.KindExecuteReader(sql);
                if (!(OptionReader.HasRows))
                {
                    OptionReader.Close();
                    OptionReader = null;
                    int name_id = GetNameID(path1);
                    int node_id = InsertOptionNode(Parent_node_id, name_id, "", 0);
                    return(recursiveSetValueOptionTree(node_id, path2, Default_value, Default_Description));
                }
                else
                {
                    parent_id = OptionReader.GetInt32(OptionReader.GetOrdinal("node_id"));
                    OptionReader.Close();
                    OptionReader = null;
                    return(recursiveSetValueOptionTree(parent_id, path2, Default_value, Default_Description));
                }
                #endregion
            }
        }
Example #15
0
 public MessagePipe(Message message)
 {
     Options        = PrivateOptions = new OptionReader();
     Configure(_pid = InvokeWithResult(__GetPipe, _msgPtr = message.MsgPtr));
 }