private static IEnumerable <BoardGame> GetBoardGames()
        {
#if DEBUG
            string path = $"{Directory.GetCurrentDirectory()}\\games.json";
            var    json = new Reader(path).Read();
#else
            var uri  = Api.GamesUrl;
            var json = new UrlReader(uri).Read();
#endif

            RootObject result;
            try
            {
                result = JsonConvert.DeserializeObject <RootObject>(json);
            }
            catch (Exception)
            {
                try
                {
                    json   = json.Substring(0, json.LastIndexOf('}')) + "}],\"MensajeError\": \"\"}";
                    result = JsonConvert.DeserializeObject <RootObject>(json);
                }
                catch (Exception)
                {
                    string localPath = $"{Directory.GetCurrentDirectory()}\\games.json";
                    json   = new Reader(localPath).Read();
                    result = JsonConvert.DeserializeObject <RootObject>(json);
                }
            }

            var boardGames = result.Convert();
            return(boardGames);
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="UrlEditorViewModel"/> class.
 /// </summary>
 /// <param name="reader">The reader<see cref="UrlReader"/>.</param>
 /// <param name="settings">The settings<see cref="Settings"/>.</param>
 internal UrlEditorViewModel(UrlReader reader, SettingsViewModel settings)
 {
     this.UrlReader = reader;
     this.UrlReader.PropertyChanged += this.OnUrlReader_PropertyChanged;
     this.Settings        = settings;
     this.DownloadCommand = new RelayCommand(this.OnDownload);
 }
示例#3
0
        static async Task Main(string[] args)
        {
            IReader reader = new UrlReader();
            string  content;

            try
            {
                content = await reader.ReadContentAsync("https://raw.githubusercontent.com/SzlukaEszter/WordCounter/master/TestText.txt");
            }
            catch (CouldNotReadException e)
            {
                Console.WriteLine("Sorry, could not read: {0}", e.Message);
                return;
            }

            String[] allWords = GetWordsFromText(content);

            Console.WriteLine("All words in file :");
            foreach (string word in allWords)
            {
                Console.WriteLine(word);
            }

            Dictionary <string, int> wordCounts = CountWords(allWords);

            Console.WriteLine("The count of words:");
            foreach (var keyValue in wordCounts)
            {
                Console.WriteLine("{0} : {1}", keyValue.Key, keyValue.Value);
            }

            Console.ReadKey();
        }
示例#4
0
        public void TestGetContent()
        {
            var sut     = new UrlReader();
            var content = sut.ReadUrl(new Uri("https://www.google.dk/"));

            Assert.IsTrue(content.Contains("<title>Google</title>"));
        }
示例#5
0
        private void ScanFalseIPs()
        {
            UrlReader ur     = new UrlReader();
            string    result = ur.GetUrl();

            if (!System.String.IsNullOrWhiteSpace(result))
            {
                string[] ResultArray = result.Split(',');
                IP       NewIP       = new IP(ResultArray[0], System.DateTime.Now, ResultArray[1], ResultArray[2], ResultArray[3]);
                bool     bNotExist   = true;
                foreach (IP CurIP in FalseIPScanner.CurrentIPs)
                {
                    if (CurIP.IPAddress == NewIP.IPAddress)
                    {
                        bNotExist = false;
                    }
                }

                if (bNotExist)
                {
                    FalseIPScanner.CurrentIPs.Add(NewIP);
                }
                for (int i = 0; i < FalseIPScanner.CurrentIPs.Count; i++)
                {
                    if (result.ToString().IndexOf(FalseIPScanner.CurrentIPs[i].IPAddress) != -1)
                    {
                        FalseIPScanner.CurrentIPs[i].LastChecked = System.DateTime.Now;
                    }
                }
            }
        }
        public void GetStatus()
        {
            this.StatusText = "Loading...";

            reader = new UrlReader();
            reader.ReadFinished += new EventHandler(reader_ReadFinished);
            reader.Read(Uri);
        }
示例#7
0
        public void TestSetup()
        {
            this.logger                   = new GenericLogger();
            this.logger.OnWriteLine      += (s => Console.WriteLine(s));
            this.logger.OnErrorWriteLine += (s => Console.WriteLine(s));

            this.reader = new UrlReader(this.logger, PluginTestHelpers.HttpClient);
        }
示例#8
0
        public void IgnoreFileProtocol()
        {
            string localGoodSizeFile = Path.Combine(urlTestFiles, "GoodSize.html");
            string url = SethPath.ToUri(localGoodSizeFile);

            string outStr;

            Assert.IsFalse(UrlReader.TryParseUrl(url, out outStr));
            Assert.IsEmpty(outStr);
        }
        string Logic(string url)
        {
            if (!url.ToLower().EndsWith(".md"))
            {
                return("");
            }

            reader = reader ?? new UrlReader();
            var page = reader.ReadUrl(new Uri(url));

            var parser    = new TocParser();
            var tocString = parser.MakeToc(page);

            return(tocString);
        }
示例#10
0
        /// <summary>
        /// The Test.
        /// </summary>
        /// <param name="testWindow">The testWindow<see cref="Window"/>.</param>
        protected override void Test(Window testWindow)
        {
            var urlReader  = new UrlReader();
            var settings   = new SettingsViewModel();
            var viewModelA = new UrlEditorViewModel(urlReader, settings)
            {
                IsVisible = true, FileName = "Youtube Video File Name", FileSize = "5 MB", Duration = "00:02:45"
            };
            var viewModelB = new UrlEditorViewModel(urlReader, settings)
            {
                IsVisible = true, FileName = "Youtube Video File Name", FileSize = "1.4 MB", Duration = "00:02:45", IsBusy = true
            };
            var stackPanel = new StackPanel();

            stackPanel.Children.Add(new UrlEditorView {
                DataContext = viewModelA
            });
            stackPanel.Children.Add(new UrlEditorView {
                DataContext = viewModelB
            });
            WindowFactory.CreateAndShow(stackPanel, testWindow);
        }
 private static void Main(string[] args)
 {
     UrlConverter.ConvertToXml(UrlReader.ReadUrl("url.txt", new UrlLogger()), "url.xml");
     Console.Read();
 }
示例#12
0
        private void SetValues(String identifier,
                               String identifierHash,
                               String identifierHashAlgorithm,
                               String qualifier)
        {
            if (identifier == null || "".Equals(identifier))
            {
                throw new ArgumentNullException("El identificador de politica no puede ser nulo ni vacio");
            }

            this.policyIdentifier = identifier;

            if (identifierHash != null && (!"0".Equals(identifierHash)) && (identifierHashAlgorithm == null || "".Equals(identifierHashAlgorithm)))
            {
                throw new ArgumentNullException("Si se indica la huella digital del identificador de politica es obligatorio indicar tambien el algoritmo");
            }

            if (identifierHash == null)
            {
                try
                {
                    //this.policyIdentifierHash = System.Convert.ToBase64String(Digester.Digest(UrlReader.ReadUri(new Uri(identifier)), "SHA-512"));
                    //MODIFICACION DAL -> NO DEBERÍA SER "new Uri(qualifier)" EN VEZ DE "new Uri(identifier)" ????
                    if (qualifier != null)
                    {
                        this.policyIdentifierHash          = System.Convert.ToBase64String(Digester.Digest(UrlReader.ReadUri(new Uri(qualifier)), "SHA-512"));
                        this.policyIdentifierHashAlgorithm = "SHA-512";
                    }
                }
                catch (Exception e)
                {
                    throw new ArgumentNullException("Si no se especifica la huella digital de la politica es necesario que el identificador sea una URL accesible universalmente: " + e, e);
                }
            }
            else
            {
                if ("0".Equals(identifierHash))
                {
                    this.policyIdentifierHash = null;
                }
                else
                {
                    if (!AOUtil.IsBase64(new System.Text.UTF8Encoding().GetBytes(identifierHash)))
                    {
                        throw new ArgumentNullException("La huella digital de la politica debe estar en formato Base64");
                    }
                    try
                    {
                        this.policyIdentifierHashAlgorithm = AOSignConstants.GetDigestAlgorithmName(identifierHashAlgorithm);
                    }
                    catch (Exception e)
                    {
                        throw new ArgumentNullException("El algoritmo de huella digital no esta soportado: " + identifierHashAlgorithm, e);
                    }
                    this.policyIdentifierHash = identifierHash;
                }
            }

            if (qualifier != null && (!"".Equals(qualifier)))
            {
                try
                {
                    this.policyQualifier = new Uri(qualifier);
                }
                catch (Exception e)
                {
                    throw new ArgumentNullException("El calificador de la politica debe ser una URL valida", e);
                }
            }
        }