private void OnAddDropdown(Rect buttonRect, ReorderableList list) { IPackageDatabase packageDatabase = PackageDatabase.GetInstance(); List <IPackageVersion> packages = packageDatabase.upmPackages.Select(x => x.installedVersion) .Where(x => x != null) .OrderBy(x => x.author ?? "Unknown") .ThenBy(x => x.displayName) .ToList(); GenericMenu menu = new GenericMenu(); foreach (IPackageVersion package in packages) { GUIContent content = new GUIContent($"{package.author ?? "Unknown"}/{package.displayName}"); if (dependencies.Any(x => x.Id == package.name)) { menu.AddItem(content, true, null); } else { menu.AddItem(content, false, AddDependency, package); } } menu.DropDown(buttonRect); }
public SymbolIndexingService( IPackageDatabase packages, ISymbolStorageService storage, ILogger <SymbolIndexingService> logger) { _packages = packages ?? throw new ArgumentNullException(nameof(packages)); _storage = storage ?? throw new ArgumentNullException(nameof(storage)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public PackageDeletionService( IPackageDatabase packages, IPackageStorageService storage, IOptionsSnapshot <BaGetOptions> options, ILogger <PackageDeletionService> logger) { _packages = packages ?? throw new ArgumentNullException(nameof(packages)); _storage = storage ?? throw new ArgumentNullException(nameof(storage)); _options = options?.Value ?? throw new ArgumentNullException(nameof(options)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public AzureSearchIndexer( IPackageDatabase packages, IndexActionBuilder actionBuilder, AzureSearchBatchIndexer batchIndexer, ILogger <AzureSearchIndexer> logger) { _packages = packages ?? throw new ArgumentNullException(nameof(packages)); _actionBuilder = actionBuilder ?? throw new ArgumentNullException(nameof(actionBuilder)); _batchIndexer = batchIndexer ?? throw new ArgumentNullException(nameof(batchIndexer)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public PackageService( IPackageDatabase db, IUpstreamClient upstream, IPackageIndexingService indexer, ILogger <PackageService> logger) { _db = db ?? throw new ArgumentNullException(nameof(db)); _upstream = upstream ?? throw new ArgumentNullException(nameof(upstream)); _indexer = indexer ?? throw new ArgumentNullException(nameof(indexer)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public PackagePublishController( IAuthenticationService authentication, IPackageIndexingService indexer, IPackageDatabase packages, IPackageDeletionService deletionService, IOptionsSnapshot <BaGetOptions> options, ILogger <PackagePublishController> logger) { _authentication = authentication ?? throw new ArgumentNullException(nameof(authentication)); _indexer = indexer ?? throw new ArgumentNullException(nameof(indexer)); _packages = packages ?? throw new ArgumentNullException(nameof(packages)); _deleteService = deletionService ?? throw new ArgumentNullException(nameof(deletionService)); _options = options ?? throw new ArgumentNullException(nameof(options)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public PackageIndexingService( IPackageDatabase packages, IPackageStorageService storage, ISearchIndexer search, SystemTime time, IOptionsSnapshot <BaGetOptions> options, ILogger <PackageIndexingService> logger) { _packages = packages ?? throw new ArgumentNullException(nameof(packages)); _storage = storage ?? throw new ArgumentNullException(nameof(storage)); _search = search ?? throw new ArgumentNullException(nameof(search)); _time = time ?? throw new ArgumentNullException(nameof(time)); _options = options ?? throw new ArgumentNullException(nameof(options)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public PackageEndpoint(IPackageDatabase database) : base("/packages") { _database = database; Get ["/"] = (parameters) => new Response { ContentType = "application/x-protobuf", StatusCode = HttpStatusCode.OK, Contents = stream => ProtoBuf.Serializer.Serialize (stream, FindAllPackages ()) }; Post ["/"] = (parameters) => { var package = this.Bind<Package>(); package.Versions = new string[]{}; // ignore versions _database.InsertPackage(package); return HttpStatusCode.OK; }; Post ["/add-version"] = (parameters) => { var packageBlob = this.Bind<PackageBlob>(); _database.AddPackageVersion(packageBlob); return HttpStatusCode.OK; }; }