Skip to content
Browse files

files

  • Loading branch information...
1 parent 81d273e commit 38443624ecf3ce5bd866117dec2e1be4955a6f17 @swistaczek committed Jun 14, 2011
View
9 czytnik-rss/.gitignore
@@ -0,0 +1,9 @@
+_ReSharper.*
+bin
+obj
+build
+dist
+*.suo
+*resharper*
+*.user
+~$*
View
35 czytnik-rss/Backup/RssCrawler.Console/Program.cs
@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+
+namespace RssCrawler.Console
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ string[] feeds = new []
+ {
+ "http://feeds2.feedburner.com/CodeBetter",
+ "http://feeds2.feedburner.com/LosTechies",
+ "http://feeds2.feedburner.com/Devlicious"
+ };
+
+ string[] words = new []
+ {
+ "nhibernate",
+ "bdd"
+ };
+
+ System.Console.WriteLine("Beginning Processing Feeds");
+
+ Runner.FeedRunner runner = new Runner.FeedRunner();
+ runner.Crawl(feeds);
+
+
+ System.Console.ReadLine();
+ }
+ }
+}
View
36 czytnik-rss/Backup/RssCrawler.Console/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("RssCrawler.Console")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Microsoft")]
+[assembly: AssemblyProduct("RssCrawler.Console")]
+[assembly: AssemblyCopyright("Copyright © Microsoft 2009")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("93556318-e070-4b0b-aa59-98ed56b55659")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
View
65 czytnik-rss/Backup/RssCrawler.Console/RssCrawler.Console.csproj
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>RssCrawler.Console</RootNamespace>
+ <AssemblyName>RssCrawler.Console</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\RssCrawler.Runner\RssCrawler.Runner.csproj">
+ <Project>{631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}</Project>
+ <Name>RssCrawler.Runner</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
View
76 czytnik-rss/Backup/RssCrawler.Runner/FeedRunner.cs
@@ -0,0 +1,76 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Threading;
+using System.Xml;
+using System.Xml.Linq;
+
+namespace RssCrawler.Runner
+{
+ public class FeedRunner
+ {
+ public int ArticleCount { get; set; }
+ private Mutex _mutex = new Mutex();
+
+ public void Crawl(string[] feeds)
+ {
+ foreach (var feed in feeds)
+ {
+ var feedFetcher = new FeedFetcher(feed, this);
+ Console.WriteLine("Starting Feed:{0}", feed);
+ Console.ReadLine();
+ new Thread(feedFetcher.ProcessFeed).Start();
+ }
+ }
+
+ public void UpdateCount()
+ {
+ lock(_mutex)
+ {
+ ArticleCount++;
+ }
+ }
+ }
+
+ public class Article
+ {
+ public string Title { get; set; }
+ public string Link { get; set; }
+ public string Description { get; set; }
+ }
+
+ public class FeedFetcher
+ {
+ private FeedRunner Runner { get; set; }
+ private readonly string _feedUrl;
+
+ public FeedFetcher(string feedUrl, FeedRunner runner)
+ {
+ Runner = runner;
+ _feedUrl = feedUrl;
+ }
+
+ public void ProcessFeed()
+ {
+ WebRequest request = WebRequest.Create(_feedUrl);
+ using (var response = request.GetResponse())
+ {
+ var xmlReader = XmlReader.Create(response.GetResponseStream());
+ XDocument document = XDocument.Load(xmlReader);
+
+ IEnumerable<Article> articles = document.Descendants("channel")
+ .Elements("item")
+ .Select(i => new Article { Title = i.Element("title").Value, Link = i.Element("link").Value});
+
+ foreach (var article in articles)
+ {
+ Runner.UpdateCount();
+ Console.WriteLine("#{0} Article:{1}", Runner.ArticleCount, article.Title);
+ }
+ }
+ }
+
+ }
+}
View
36 czytnik-rss/Backup/RssCrawler.Runner/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("RssCrawler.Runner")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Microsoft")]
+[assembly: AssemblyProduct("RssCrawler.Runner")]
+[assembly: AssemblyCopyright("Copyright © Microsoft 2009")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("1ffc2465-97af-4646-a7c5-a7ca5f08653a")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
View
59 czytnik-rss/Backup/RssCrawler.Runner/RssCrawler.Runner.csproj
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>RssCrawler.Runner</RootNamespace>
+ <AssemblyName>RssCrawler.Runner</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="FeedRunner.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
View
26 czytnik-rss/Backup/rss-crawler.sln
@@ -0,0 +1,26 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RssCrawler.Console", "RssCrawler.Console\RssCrawler.Console.csproj", "{8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RssCrawler.Runner", "RssCrawler.Runner\RssCrawler.Runner.csproj", "{631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Release|Any CPU.Build.0 = Release|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
View
1 czytnik-rss/README.markdown
@@ -0,0 +1 @@
+Simple crawler that grabs feeds from multiple websites.
View
31 czytnik-rss/RssCrawler.Console/Program.cs
@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+
+/* Prosty czytnik RSS - C# demo */
+namespace RssCrawler.Console
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ string[] feeds = new []
+ {
+ "http://rss.feedsportal.com/c/32739/f/530278/index.rss",
+ "http://gazeta.pl.feedsportal.com/c/32739/f/576250/index.rss",
+ "http://rss.gazeta.pl/pub/rss/kotek.xml"
+ };
+
+ System.Console.WriteLine("Rozpoczynam pobieranie źródeł ({0})", feeds.Length);
+ System.Console.WriteLine("Czekaj cierpliwie");
+ System.Console.WriteLine("----------------------------------------------------------------");
+
+ Runner.FeedRunner runner = new Runner.FeedRunner();
+ runner.Crawl(feeds);
+
+ System.Console.ReadLine();
+ }
+ }
+}
View
36 czytnik-rss/RssCrawler.Console/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("RssCrawler.Console")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Microsoft")]
+[assembly: AssemblyProduct("RssCrawler.Console")]
+[assembly: AssemblyCopyright("Copyright © Microsoft 2009")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("93556318-e070-4b0b-aa59-98ed56b55659")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
View
72 czytnik-rss/RssCrawler.Console/RssCrawler.Console.csproj
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>RssCrawler.Console</RootNamespace>
+ <AssemblyName>RssCrawler.Console</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <UpgradeBackupLocation>
+ </UpgradeBackupLocation>
+ <OldToolsVersion>3.5</OldToolsVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\RssCrawler.Runner\RssCrawler.Runner.csproj">
+ <Project>{631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}</Project>
+ <Name>RssCrawler.Runner</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
View
85 czytnik-rss/RssCrawler.Runner/FeedRunner.cs
@@ -0,0 +1,85 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Threading;
+using System.Xml;
+using System.Xml.Linq;
+
+/* Prosty czytnik RSS - C# demo */
+/* Worker odpowiedzialny za pobieranie feedów, w¹tek */
+namespace RssCrawler.Runner
+{
+ public class FeedRunner
+ {
+ public int ArticleCount { get; set; }
+ private Mutex _mutex = new Mutex();
+
+ /* Metoda publiczna do processingu feedu */
+ public void Crawl(string[] feeds)
+ {
+ foreach (var feed in feeds)
+ {
+ var feedFetcher = new FeedFetcher(feed, this);
+ Console.WriteLine("Pobieranie: {0} - zaczekaj", feed);
+ Console.ReadLine();
+ new Thread(feedFetcher.ProcessFeed).Start();
+ }
+ }
+
+
+ /* Metoda publiczna do zwiêkszania iloœci artyku³ów */
+ public void UpdateCount()
+ {
+ lock(_mutex)
+ {
+ ArticleCount++;
+ }
+ }
+ }
+
+ /* Klasa artyku³u */
+ public class Article
+ {
+ public string Title { get; set; }
+ public string Link { get; set; }
+ public string Description { get; set; }
+ }
+
+ /* Klasa workera pobieraj¹cego feed */
+ public class FeedFetcher
+ {
+ private FeedRunner Runner { get; set; }
+ private readonly string _feedUrl;
+
+ public FeedFetcher(string feedUrl, FeedRunner runner)
+ {
+ Runner = runner;
+ _feedUrl = feedUrl;
+ }
+
+ /* Wykorzystywanie WebRequest i obrabianie pliku */
+ public void ProcessFeed()
+ {
+ WebRequest request = WebRequest.Create(_feedUrl);
+ using (var response = request.GetResponse())
+ {
+ var xmlReader = XmlReader.Create(response.GetResponseStream());
+ XDocument document = XDocument.Load(xmlReader);
+
+ IEnumerable<Article> articles = document.Descendants("channel")
+ .Elements("item")
+ .Select(i => new Article { Title = i.Element("title").Value, Link = i.Element("link").Value});
+
+ /* Wyœwietlanie w pêtli wszystkich artyku³ów - boskie foreach! */
+ foreach (var article in articles)
+ {
+ Runner.UpdateCount();
+ Console.WriteLine("#{0} Artyku³: {1}", Runner.ArticleCount, article.Title);
+ }
+ }
+ }
+
+ }
+}
View
36 czytnik-rss/RssCrawler.Runner/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("RssCrawler.Runner")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Microsoft")]
+[assembly: AssemblyProduct("RssCrawler.Runner")]
+[assembly: AssemblyCopyright("Copyright © Microsoft 2009")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("1ffc2465-97af-4646-a7c5-a7ca5f08653a")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
View
66 czytnik-rss/RssCrawler.Runner/RssCrawler.Runner.csproj
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>RssCrawler.Runner</RootNamespace>
+ <AssemblyName>RssCrawler.Runner</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <UpgradeBackupLocation>
+ </UpgradeBackupLocation>
+ <OldToolsVersion>3.5</OldToolsVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="FeedRunner.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
View
21 czytnik-rss/UpgradeLog.XML
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type='text/xsl' href='_UpgradeReport_Files/UpgradeReport.xslt'?><UpgradeLog>
+<Properties><Property Name="Solution" Value="rss-crawler">
+</Property><Property Name="Solution File" Value="E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\rss-crawler.sln">
+</Property><Property Name="Date" Value="14 czerwca 2011">
+</Property><Property Name="Time" Value="21:20">
+</Property></Properties><Event ErrorLevel="0" Project="" Source="rss-crawler.sln" Description="File successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\rss-crawler.sln">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Console" Source="RssCrawler.Console\RssCrawler.Console.csproj" Description="Project file successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\RssCrawler.Console\RssCrawler.Console.csproj">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Console" Source="RssCrawler.Console\Program.cs" Description="File successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\RssCrawler.Console\Program.cs">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Console" Source="RssCrawler.Console\Properties\AssemblyInfo.cs" Description="File successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\RssCrawler.Console\Properties\AssemblyInfo.cs">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Console" Source="RssCrawler.Console\RssCrawler.Console.csproj" Description="Project converted successfully">
+</Event><Event ErrorLevel="3" Project="RssCrawler.Console" Source="RssCrawler.Console\RssCrawler.Console.csproj" Description="Converted">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Runner" Source="RssCrawler.Runner\RssCrawler.Runner.csproj" Description="Project file successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\RssCrawler.Runner\RssCrawler.Runner.csproj">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Runner" Source="RssCrawler.Runner\FeedRunner.cs" Description="File successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\RssCrawler.Runner\FeedRunner.cs">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Runner" Source="RssCrawler.Runner\Properties\AssemblyInfo.cs" Description="File successfully backed up as E:\Szkola\II Semestr\Prezentacje\JiPP\schambers-rss-crawler-5e71c66\Backup\RssCrawler.Runner\Properties\AssemblyInfo.cs">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Runner" Source="RssCrawler.Runner\RssCrawler.Runner.csproj" Description="Project converted successfully">
+</Event><Event ErrorLevel="3" Project="RssCrawler.Runner" Source="RssCrawler.Runner\RssCrawler.Runner.csproj" Description="Converted">
+</Event><Event ErrorLevel="0" Project="" Source="rss-crawler.sln" Description="Solution converted successfully">
+</Event><Event ErrorLevel="3" Project="" Source="rss-crawler.sln" Description="Converted">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Console" Source="RssCrawler.Console\RssCrawler.Console.csproj" Description="Scan complete: Upgrade not required for project files.">
+</Event><Event ErrorLevel="0" Project="RssCrawler.Runner" Source="RssCrawler.Runner\RssCrawler.Runner.csproj" Description="Scan complete: Upgrade not required for project files.">
+</Event></UpgradeLog>
View
207 czytnik-rss/_UpgradeReport_Files/UpgradeReport.css
@@ -0,0 +1,207 @@
+BODY
+{
+ BACKGROUND-COLOR: white;
+ FONT-FAMILY: "Verdana", sans-serif;
+ FONT-SIZE: 100%;
+ MARGIN-LEFT: 0px;
+ MARGIN-TOP: 0px
+}
+P
+{
+ FONT-FAMILY: "Verdana", sans-serif;
+ FONT-SIZE: 70%;
+ LINE-HEIGHT: 12pt;
+ MARGIN-BOTTOM: 0px;
+ MARGIN-LEFT: 10px;
+ MARGIN-TOP: 10px
+}
+.note
+{
+ BACKGROUND-COLOR: #ffffff;
+ COLOR: #336699;
+ FONT-FAMILY: "Verdana", sans-serif;
+ FONT-SIZE: 100%;
+ MARGIN-BOTTOM: 0px;
+ MARGIN-LEFT: 0px;
+ MARGIN-TOP: 0px;
+ PADDING-RIGHT: 10px
+}
+.infotable
+{
+ BACKGROUND-COLOR: #f0f0e0;
+ BORDER-BOTTOM: #ffffff 0px solid;
+ BORDER-COLLAPSE: collapse;
+ BORDER-LEFT: #ffffff 0px solid;
+ BORDER-RIGHT: #ffffff 0px solid;
+ BORDER-TOP: #ffffff 0px solid;
+ FONT-SIZE: 70%;
+ MARGIN-LEFT: 10px
+}
+.issuetable
+{
+ BACKGROUND-COLOR: #ffffe8;
+ BORDER-COLLAPSE: collapse;
+ COLOR: #000000;
+ FONT-SIZE: 100%;
+ MARGIN-BOTTOM: 10px;
+ MARGIN-LEFT: 13px;
+ MARGIN-TOP: 0px
+}
+.issuetitle
+{
+ BACKGROUND-COLOR: #ffffff;
+ BORDER-BOTTOM: #dcdcdc 1px solid;
+ BORDER-TOP: #dcdcdc 1px;
+ COLOR: #003366;
+ FONT-WEIGHT: normal
+}
+.header
+{
+ BACKGROUND-COLOR: #cecf9c;
+ BORDER-BOTTOM: #ffffff 1px solid;
+ BORDER-LEFT: #ffffff 1px solid;
+ BORDER-RIGHT: #ffffff 1px solid;
+ BORDER-TOP: #ffffff 1px solid;
+ COLOR: #000000;
+ FONT-WEIGHT: bold
+}
+.issuehdr
+{
+ BACKGROUND-COLOR: #E0EBF5;
+ BORDER-BOTTOM: #dcdcdc 1px solid;
+ BORDER-TOP: #dcdcdc 1px solid;
+ COLOR: #000000;
+ FONT-WEIGHT: normal
+}
+.issuenone
+{
+ BACKGROUND-COLOR: #ffffff;
+ BORDER-BOTTOM: 0px;
+ BORDER-LEFT: 0px;
+ BORDER-RIGHT: 0px;
+ BORDER-TOP: 0px;
+ COLOR: #000000;
+ FONT-WEIGHT: normal
+}
+.content
+{
+ BACKGROUND-COLOR: #e7e7ce;
+ BORDER-BOTTOM: #ffffff 1px solid;
+ BORDER-LEFT: #ffffff 1px solid;
+ BORDER-RIGHT: #ffffff 1px solid;
+ BORDER-TOP: #ffffff 1px solid;
+ PADDING-LEFT: 3px
+}
+.issuecontent
+{
+ BACKGROUND-COLOR: #ffffff;
+ BORDER-BOTTOM: #dcdcdc 1px solid;
+ BORDER-TOP: #dcdcdc 1px solid;
+ PADDING-LEFT: 3px
+}
+A:link
+{
+ COLOR: #cc6633;
+ TEXT-DECORATION: underline
+}
+A:visited
+{
+ COLOR: #cc6633;
+}
+A:active
+{
+ COLOR: #cc6633;
+}
+A:hover
+{
+ COLOR: #cc3300;
+ TEXT-DECORATION: underline
+}
+H1
+{
+ BACKGROUND-COLOR: #003366;
+ BORDER-BOTTOM: #336699 6px solid;
+ COLOR: #ffffff;
+ FONT-SIZE: 130%;
+ FONT-WEIGHT: normal;
+ MARGIN: 0em 0em 0em -20px;
+ PADDING-BOTTOM: 8px;
+ PADDING-LEFT: 30px;
+ PADDING-TOP: 16px
+}
+H2
+{
+ COLOR: #000000;
+ FONT-SIZE: 80%;
+ FONT-WEIGHT: bold;
+ MARGIN-BOTTOM: 3px;
+ MARGIN-LEFT: 10px;
+ MARGIN-TOP: 20px;
+ PADDING-LEFT: 0px
+}
+H3
+{
+ COLOR: #000000;
+ FONT-SIZE: 80%;
+ FONT-WEIGHT: bold;
+ MARGIN-BOTTOM: -5px;
+ MARGIN-LEFT: 10px;
+ MARGIN-TOP: 20px
+}
+H4
+{
+ COLOR: #000000;
+ FONT-SIZE: 70%;
+ FONT-WEIGHT: bold;
+ MARGIN-BOTTOM: 0px;
+ MARGIN-TOP: 15px;
+ PADDING-BOTTOM: 0px
+}
+UL
+{
+ COLOR: #000000;
+ FONT-SIZE: 70%;
+ LIST-STYLE: square;
+ MARGIN-BOTTOM: 0pt;
+ MARGIN-TOP: 0pt
+}
+OL
+{
+ COLOR: #000000;
+ FONT-SIZE: 70%;
+ LIST-STYLE: square;
+ MARGIN-BOTTOM: 0pt;
+ MARGIN-TOP: 0pt
+}
+LI
+{
+ LIST-STYLE: square;
+ MARGIN-LEFT: 0px
+}
+.expandable
+{
+ CURSOR: hand
+}
+.expanded
+{
+ color: black
+}
+.collapsed
+{
+ DISPLAY: none
+}
+.foot
+{
+BACKGROUND-COLOR: #ffffff;
+BORDER-BOTTOM: #cecf9c 1px solid;
+BORDER-TOP: #cecf9c 2px solid
+}
+.settings
+{
+MARGIN-LEFT: 25PX;
+}
+.help
+{
+TEXT-ALIGN: right;
+margin-right: 10px;
+}
View
232 czytnik-rss/_UpgradeReport_Files/UpgradeReport.xslt
@@ -0,0 +1,232 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl='urn:schemas-microsoft-com:xslt'>
+
+ <xsl:key name="ProjectKey" match="Event" use="@Project" />
+
+ <xsl:template match="Events" mode="createProjects">
+ <projects>
+ <xsl:for-each select="Event">
+ <!--xsl:sort select="@Project" order="descending"/-->
+ <xsl:if test="(1=position()) or (preceding-sibling::*[1]/@Project != @Project)">
+
+ <xsl:variable name="ProjectName" select="@Project"/>
+
+ <project>
+ <xsl:attribute name="name">
+ <xsl:value-of select="@Project"/>
+ </xsl:attribute>
+
+ <xsl:if test="@Project=''">
+ <xsl:attribute name="solution">
+ <xsl:value-of select="@Solution"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:for-each select="key('ProjectKey', $ProjectName)">
+ <!--xsl:sort select="@Source" /-->
+ <xsl:if test="(1=position()) or (preceding-sibling::*[1]/@Source != @Source)">
+
+ <source>
+ <xsl:attribute name="name">
+ <xsl:value-of select="@Source"/>
+ </xsl:attribute>
+
+ <xsl:variable name="Source">
+ <xsl:value-of select="@Source"/>
+ </xsl:variable>
+
+ <xsl:for-each select="key('ProjectKey', $ProjectName)[ @Source = $Source ]">
+
+ <event>
+ <xsl:attribute name="error-level">
+ <xsl:value-of select="@ErrorLevel"/>
+ </xsl:attribute>
+ <xsl:attribute name="description">
+ <xsl:value-of select="@Description"/>
+ </xsl:attribute>
+ </event>
+ </xsl:for-each>
+ </source>
+ </xsl:if>
+ </xsl:for-each>
+
+ </project>
+ </xsl:if>
+ </xsl:for-each>
+ </projects>
+ </xsl:template>
+
+ <xsl:template match="projects">
+ <xsl:for-each select="project">
+ <xsl:sort select="@Name" order="ascending"/>
+ <h2>
+ <xsl:if test="@solution"><a _locID="Solution">Solution</a>: <xsl:value-of select="@solution"/></xsl:if>
+ <xsl:if test="not(@solution)"><a _locID="Project">Project</a>: <xsl:value-of select="@name"/>
+ <xsl:for-each select="source">
+ <xsl:variable name="Hyperlink" select="@name"/>
+ <xsl:for-each select="event[@error-level='4']">
+ &#32;<A class="note"><xsl:attribute name="HREF"><xsl:value-of select="$Hyperlink"/></xsl:attribute><xsl:value-of select="@description"/></A>
+ </xsl:for-each>
+ </xsl:for-each>
+ </xsl:if>
+ </h2>
+
+ <table cellpadding="2" cellspacing="0" width="98%" border="1" bordercolor="white" class="infotable">
+ <tr>
+ <td nowrap="1" class="header" _locID="Filename">Filename</td>
+ <td nowrap="1" class="header" _locID="Status">Status</td>
+ <td nowrap="1" class="header" _locID="Errors">Errors</td>
+ <td nowrap="1" class="header" _locID="Warnings">Warnings</td>
+ </tr>
+
+ <xsl:for-each select="source">
+ <xsl:sort select="@name" order="ascending"/>
+ <xsl:variable name="source-id" select="generate-id(.)"/>
+
+ <xsl:if test="count(event)!=count(event[@error-level='4'])">
+
+ <tr class="row">
+ <td class="content">
+ <A HREF="javascript:"><xsl:attribute name="onClick">javascript:document.images['<xsl:value-of select="$source-id"/>'].click()</xsl:attribute><IMG border="0" _locID="IMG.alt" _locAttrData="alt" alt="expand/collapse section" class="expandable" height="11" onclick="changepic()" src="_UpgradeReport_Files/UpgradeReport_Plus.gif" width="9" ><xsl:attribute name="name"><xsl:value-of select="$source-id"/></xsl:attribute><xsl:attribute name="child">src<xsl:value-of select="$source-id"/></xsl:attribute></IMG></A>&#32;<xsl:value-of select="@name"/>
+ </td>
+ <td class="content">
+ <xsl:if test="count(event[@error-level='3'])=1">
+ <xsl:for-each select="event[@error-level='3']">
+ <xsl:if test="@description='Converted'"><a _locID="Converted1">Converted</a></xsl:if>
+ <xsl:if test="@description!='Converted'"><xsl:value-of select="@description"/></xsl:if>
+ </xsl:for-each>
+ </xsl:if>
+ <xsl:if test="count(event[@error-level='3'])!=1 and count(event[@error-level='3' and @description='Converted'])!=0"><a _locID="Converted2">Converted</a>
+ </xsl:if>
+ </td>
+ <td class="content"><xsl:value-of select="count(event[@error-level='2'])"/></td>
+ <td class="content"><xsl:value-of select="count(event[@error-level='1'])"/></td>
+ </tr>
+
+ <tr class="collapsed" bgcolor="#ffffff">
+ <xsl:attribute name="id">src<xsl:value-of select="$source-id"/></xsl:attribute>
+
+ <td colspan="7">
+ <table width="97%" border="1" bordercolor="#dcdcdc" rules="cols" class="issuetable">
+ <tr>
+ <td colspan="7" class="issuetitle" _locID="ConversionIssues">Conversion Report - <xsl:value-of select="@name"/>:</td>
+ </tr>
+
+ <xsl:for-each select="event[@error-level!='3']">
+ <xsl:if test="@error-level!='4'">
+ <tr>
+ <td class="issuenone" style="border-bottom:solid 1 lightgray">
+ <xsl:value-of select="@description"/>
+ </td>
+ </tr>
+ </xsl:if>
+ </xsl:for-each>
+ </table>
+ </td>
+ </tr>
+ </xsl:if>
+ </xsl:for-each>
+
+ <tr valign="top">
+ <td class="foot">
+ <xsl:if test="count(source)!=1">
+ <xsl:value-of select="count(source)"/><a _locID="file1"> files</a>
+ </xsl:if>
+ <xsl:if test="count(source)=1">
+ <a _locID="file2">1 file</a>
+ </xsl:if>
+ </td>
+ <td class="foot">
+ <a _locID="Converted3">Converted</a>:&#32;<xsl:value-of select="count(source/event[@error-level='3' and @description='Converted'])"/><BR />
+ <a _locID="NotConverted">Not converted</a>:&#32;<xsl:value-of select="count(source) - count(source/event[@error-level='3' and @description='Converted'])"/>
+ </td>
+ <td class="foot"><xsl:value-of select="count(source/event[@error-level='2'])"/></td>
+ <td class="foot"><xsl:value-of select="count(source/event[@error-level='1'])"/></td>
+ </tr>
+ </table>
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template match="Property">
+ <xsl:if test="@Name!='Date' and @Name!='Time' and @Name!='LogNumber' and @Name!='Solution'">
+ <tr><td nowrap="1"><b><xsl:value-of select="@Name"/>: </b><xsl:value-of select="@Value"/></td></tr>
+ </xsl:if>
+ </xsl:template>
+
+ <xsl:template match="UpgradeLog">
+ <html>
+ <head>
+ <META HTTP-EQUIV="Content-Type" content="text/html; charset=utf-8" />
+ <link rel="stylesheet" href="_UpgradeReport_Files\UpgradeReport.css" />
+ <title _locID="ConversionReport0">Conversion Report&#32;
+ <xsl:if test="Properties/Property[@Name='LogNumber']">
+ <xsl:value-of select="Properties/Property[@Name='LogNumber']/@Value"/>
+ </xsl:if>
+ </title>
+ <script language="javascript">
+ function outliner () {
+ oMe = window.event.srcElement
+ //get child element
+ var child = document.all[event.srcElement.getAttribute("child",false)];
+ //if child element exists, expand or collapse it.
+ if (null != child)
+ child.className = child.className == "collapsed" ? "expanded" : "collapsed";
+ }
+
+ function changepic() {
+ uMe = window.event.srcElement;
+ var check = uMe.src.toLowerCase();
+ if (check.lastIndexOf("upgradereport_plus.gif") != -1)
+ {
+ uMe.src = "_UpgradeReport_Files/UpgradeReport_Minus.gif"
+ }
+ else
+ {
+ uMe.src = "_UpgradeReport_Files/UpgradeReport_Plus.gif"
+ }
+ }
+ </script>
+ </head>
+ <body topmargin="0" leftmargin="0" rightmargin="0" onclick="outliner();">
+ <h1 _locID="ConversionReport">Conversion Report - <xsl:value-of select="Properties/Property[@Name='Solution']/@Value"/></h1>
+
+ <p><span class="note">
+ <b _locID="TimeOfConversion">Time of Conversion:</b>&#32;&#32;<xsl:value-of select="Properties/Property[@Name='Date']/@Value"/>&#32;&#32;<xsl:value-of select="Properties/Property[@Name='Time']/@Value"/><br/>
+ </span></p>
+
+ <xsl:variable name="SortedEvents">
+ <Events>
+ <xsl:for-each select="Event">
+ <xsl:sort select="@Project" order="ascending"/>
+ <xsl:sort select="@Source" order="ascending"/>
+ <xsl:sort select="@ErrorLevel" order="ascending"/>
+ <Event>
+ <xsl:attribute name="Project"><xsl:value-of select="@Project"/> </xsl:attribute>
+ <xsl:attribute name="Solution"><xsl:value-of select="/UpgradeLog/Properties/Property[@Name='Solution']/@Value"/> </xsl:attribute>
+ <xsl:attribute name="Source"><xsl:value-of select="@Source"/> </xsl:attribute>
+ <xsl:attribute name="ErrorLevel"><xsl:value-of select="@ErrorLevel"/> </xsl:attribute>
+ <xsl:attribute name="Description"><xsl:value-of select="@Description"/> </xsl:attribute>
+ </Event>
+ </xsl:for-each>
+ </Events>
+ </xsl:variable>
+
+ <xsl:variable name="Projects">
+ <xsl:apply-templates select="msxsl:node-set($SortedEvents)/*" mode="createProjects"/>
+ </xsl:variable>
+
+ <xsl:apply-templates select="msxsl:node-set($Projects)/*"/>
+
+ <p></p><p>
+ <table class="note">
+ <tr>
+ <td nowrap="1">
+ <b _locID="ConversionSettings">Conversion Settings</b>
+ </td>
+ </tr>
+ <xsl:apply-templates select="Properties"/>
+ </table></p>
+ </body>
+ </html>
+ </xsl:template>
+</xsl:stylesheet>
View
BIN czytnik-rss/_UpgradeReport_Files/UpgradeReport_Minus.gif
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN czytnik-rss/_UpgradeReport_Files/UpgradeReport_Plus.gif
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
26 czytnik-rss/rss-crawler.sln
@@ -0,0 +1,26 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RssCrawler.Console", "RssCrawler.Console\RssCrawler.Console.csproj", "{8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RssCrawler.Runner", "RssCrawler.Runner\RssCrawler.Runner.csproj", "{631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8FECBD9D-A79E-4EC0-8AC9-B41BBDD92373}.Release|Any CPU.Build.0 = Release|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {631C2CAA-8AF6-42CD-8B21-8E99D3BCEE12}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal

0 comments on commit 3844362

Please sign in to comment.
Something went wrong with that request. Please try again.