File tree Expand file tree Collapse file tree 3 files changed +13
-7
lines changed Expand file tree Collapse file tree 3 files changed +13
-7
lines changed Original file line number Diff line number Diff line change @@ -33,6 +33,8 @@ ApiExporter? get apiExporter => ss.lookup(#_apiExporter) as ApiExporter?;
33
33
const _concurrency = 50 ;
34
34
35
35
class ApiExporter {
36
+ final DatastoreDB _db;
37
+
36
38
final ExportedApi _api;
37
39
38
40
/// If [stop] has been called to stop background processes.
@@ -46,7 +48,8 @@ class ApiExporter {
46
48
/// `null` when not started yet.
47
49
Completer <void >? _stopped;
48
50
49
- ApiExporter ({
51
+ ApiExporter (
52
+ this ._db, {
50
53
required Bucket bucket,
51
54
}) : _api = ExportedApi (storageService, bucket);
52
55
@@ -136,7 +139,7 @@ class ApiExporter {
136
139
/// This is intended to be scheduled from a daily background task.
137
140
Future <void > synchronizeExportedApi ({bool forceWrite = false }) async {
138
141
final allPackageNames = < String > {};
139
- final packageQuery = dbService .query <Package >();
142
+ final packageQuery = _db .query <Package >();
140
143
var errCount = 0 ;
141
144
await packageQuery.run ().parallelForEach (_concurrency, (pkg) async {
142
145
final name = pkg.name! ;
@@ -251,7 +254,7 @@ class ApiExporter {
251
254
var since = clock.ago (days: 3 );
252
255
while (claim.valid && ! abort.isCompleted) {
253
256
// Look at all packages changed in [since]
254
- final q = dbService .query <Package >()
257
+ final q = _db .query <Package >()
255
258
..filter ('updated >' , since)
256
259
..order ('-updated' );
257
260
Original file line number Diff line number Diff line change @@ -245,8 +245,10 @@ Future<R> _withPubServices<R>(FutureOr<R> Function() fn) async {
245
245
registerAnnouncementBackend (AnnouncementBackend ());
246
246
if (activeConfiguration.exportedApiBucketName != null ) {
247
247
registerApiExporter (ApiExporter (
248
- bucket: storageService
249
- .bucket (activeConfiguration.exportedApiBucketName! )));
248
+ dbService,
249
+ bucket:
250
+ storageService.bucket (activeConfiguration.exportedApiBucketName! ),
251
+ ));
250
252
}
251
253
registerAsyncQueue (AsyncQueue ());
252
254
registerAuditBackend (AuditBackend (dbService));
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import 'package:googleapis/storage/v1.dart' show DetailedApiRequestError;
12
12
import 'package:logging/logging.dart' ;
13
13
import 'package:pub_dev/fake/backend/fake_auth_provider.dart' ;
14
14
import 'package:pub_dev/package/api_export/api_exporter.dart' ;
15
+ import 'package:pub_dev/shared/datastore.dart' ;
15
16
import 'package:pub_dev/shared/storage.dart' ;
16
17
import 'package:pub_dev/shared/utils.dart' ;
17
18
import 'package:pub_dev/shared/versions.dart' ;
@@ -46,7 +47,7 @@ void main() {
46
47
(fakeTime) async {
47
48
await storageService.createBucket ('bucket' );
48
49
final bucket = storageService.bucket ('bucket' );
49
- final apiExporter = ApiExporter (bucket: bucket);
50
+ final apiExporter = ApiExporter (dbService, bucket: bucket);
50
51
51
52
await _testExportedApiSynchronization (
52
53
fakeTime,
@@ -61,7 +62,7 @@ void main() {
61
62
(fakeTime) async {
62
63
await storageService.createBucket ('bucket' );
63
64
final bucket = storageService.bucket ('bucket' );
64
- final apiExporter = ApiExporter (bucket: bucket);
65
+ final apiExporter = ApiExporter (dbService, bucket: bucket);
65
66
66
67
await apiExporter.synchronizeExportedApi ();
67
68
You can’t perform that action at this time.
0 commit comments