public static async Task <IEnumerable <IServerPackage> > SearchAsync(
     this IServerPackageRepository repository,
     string searchTerm,
     bool allowPrereleaseVersions,
     ClientCompatibility compatibility,
     CancellationToken token)
 {
     return(await repository.SearchAsync(
                searchTerm,
                Enumerable.Empty <string>(),
                allowPrereleaseVersions,
                compatibility,
                token));
 }
예제 #2
0
        public virtual async Task <IHttpActionResult> Search(
            ODataQueryOptions <ODataPackage> options,
            [FromODataUri] string searchTerm      = "",
            [FromODataUri] string targetFramework = "",
            [FromODataUri] bool includePrerelease = false,
            [FromODataUri] bool includeDelisted   = false,
            [FromUri] string semVerLevel          = "",
            CancellationToken token = default(CancellationToken))
        {
            var targetFrameworks = String.IsNullOrEmpty(targetFramework) ? Enumerable.Empty <string>() : targetFramework.Split('|');

            var clientCompatibility = ClientCompatibilityFactory.FromProperties(semVerLevel);

            var sourceQuery = await _serverRepository.SearchAsync(
                searchTerm,
                targetFrameworks,
                includePrerelease,
                clientCompatibility,
                token);

            return(TransformToQueryResult(options, sourceQuery, clientCompatibility));
        }