diff --git a/.gitignore b/.gitignore index 2f8789f..48bf3e1 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,7 @@ ################################################################################ /.vs/YouTubeScraper/v16 +/.vs +/YouTubeScraper/.vs/YouTubeScraper/v16 +/YouTubeScraper/YouTubeScraper/bin/Debug/netstandard2.0 +/YouTubeScraper/YouTubeScraper/obj diff --git a/YouTubeScraper/YouTubeScraper.sln b/YouTubeScraper/YouTubeScraper.sln new file mode 100644 index 0000000..9fa488e --- /dev/null +++ b/YouTubeScraper/YouTubeScraper.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29424.173 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "YouTubeScraper", "YouTubeScraper\YouTubeScraper.csproj", "{F7E1AD03-B67C-4C79-BE84-682490ED05C5}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F7E1AD03-B67C-4C79-BE84-682490ED05C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F7E1AD03-B67C-4C79-BE84-682490ED05C5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F7E1AD03-B67C-4C79-BE84-682490ED05C5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F7E1AD03-B67C-4C79-BE84-682490ED05C5}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {CD40D1C9-553A-4E06-965A-A9ACC91EED25} + EndGlobalSection +EndGlobal diff --git a/YouTubeScraper/YouTubeScraper/Resources/DashManifestsResource.cs b/YouTubeScraper/YouTubeScraper/Resources/DashManifestsResource.cs new file mode 100644 index 0000000..b1b8c99 --- /dev/null +++ b/YouTubeScraper/YouTubeScraper/Resources/DashManifestsResource.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace YouTubeScraper.Resources +{ + public class DashManifestsResource + { + public class ListRequest { } + + public ListRequest List(string id) + { + return new ListRequest(); + } + } +} diff --git a/YouTubeScraper/YouTubeScraper/Resources/HistoryResource.cs b/YouTubeScraper/YouTubeScraper/Resources/HistoryResource.cs new file mode 100644 index 0000000..4d37e92 --- /dev/null +++ b/YouTubeScraper/YouTubeScraper/Resources/HistoryResource.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.Text; +using Google.Apis.YouTube.v3; +using Google.Apis.YouTube.v3.Data; + +namespace YouTubeScraper.Resources +{ + public class HistoryResource + { + public class ListRequest { } + public class InsertRequest { } + public class DeleteRequest { } + public class ClearRequest { } + + public ListRequest List() + { + return new ListRequest(); + } + + public InsertRequest Insert(string videoId, TimeSpan? leftOn) + { + return new InsertRequest(); + } + + public DeleteRequest Delete(string videoId) + { + return new DeleteRequest(); + } + + public ClearRequest Clear() + { + return new ClearRequest(); + } + } +} diff --git a/YouTubeScraper/YouTubeScraper/Resources/WatchLaterResource.cs b/YouTubeScraper/YouTubeScraper/Resources/WatchLaterResource.cs new file mode 100644 index 0000000..64c3786 --- /dev/null +++ b/YouTubeScraper/YouTubeScraper/Resources/WatchLaterResource.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace YouTubeScraper.Resources +{ + public class WatchLaterResource + { + public class ListRequest { } + public class InsertRequest { } + public class DeleteRequest { } + + public ListRequest List() + { + return new ListRequest(); + } + + public InsertRequest Insert(string videoId) + { + return new InsertRequest(); + } + + public DeleteRequest Delete(string videoId) + { + return new DeleteRequest(); + } + } +} diff --git a/YouTubeScraper/YouTubeScraper/YouTubeScraper.cs b/YouTubeScraper/YouTubeScraper/YouTubeScraper.cs new file mode 100644 index 0000000..293ea26 --- /dev/null +++ b/YouTubeScraper/YouTubeScraper/YouTubeScraper.cs @@ -0,0 +1,19 @@ +using System; +using Google.Apis.YouTube.v3; +using YouTubeScraper.Resources; + +namespace YouTubeScraper +{ + public class YouTubeScraper : YouTubeService + { + public HistoryResource History { get; } + public WatchLaterResource WatchLater { get; } + public DashManifestsResource DashManifests { get; set; } + // TODO: Add Activities override for recomendations and subscriptions + + public YouTubeScraper() + { + + } + } +} diff --git a/YouTubeScraper/YouTubeScraper/YouTubeScraper.csproj b/YouTubeScraper/YouTubeScraper/YouTubeScraper.csproj new file mode 100644 index 0000000..d16b0df --- /dev/null +++ b/YouTubeScraper/YouTubeScraper/YouTubeScraper.csproj @@ -0,0 +1,17 @@ + + + + netstandard2.0 + + + + + + + + + + + + +