Example #1
0
        async Task CreateIndex(CancellationToken cancellationToken)
        {
            var index = new Index();

            string queryResource = new Uri(_baseAddress, "query").AbsoluteUri;
            index.Add(queryResource, "@type", "SearchQueryService/3.0.0-beta");
            index.Add(queryResource, "comment", "Query endpoint of NuGet Search service (primary)");

            string flatContainerResource = new Uri(_baseAddress, Flat).AbsoluteUri;
            index.Add(flatContainerResource, "@type", "PackageBaseAddress/3.0.0");
            index.Add(flatContainerResource, "comment", "Base URL of Azure storage where NuGet package registration info for DNX is stored");

            string registrationsBaseUrlResource = new Uri(_baseAddress, Registration).AbsoluteUri;
            index.Add(registrationsBaseUrlResource, "@type", "RegistrationsBaseUrl/3.0.0-beta");
            index.Add(registrationsBaseUrlResource, "comment", "Base URL of Azure storage where NuGet package registration info is stored used by Beta clients");

            string reportAbuseResource = "https://www.nuget.org/packages/{id}/{version}/ReportAbuse";
            index.Add(reportAbuseResource, "@type", "ReportAbuseUriTemplate/3.0.0-beta");
            index.Add(reportAbuseResource, "comment", "URI template used by NuGet Client to construct Report Abuse URL for packages");

            var factory = new MemoryStorageFactory(_baseAddress, _store);
            var storage = factory.Create();

            await storage.Save(new Uri(_baseAddress, "index.json"), new StringStorageContent(index.ToJson(), "application/json"), cancellationToken);
        }