1
1
import 'dart:io' ;
2
2
3
+ import 'package:core/core.dart' ;
3
4
import 'package:dart_frog/dart_frog.dart' ;
4
- import 'package:ht_api/src/helpers/response_helper.dart' ;
5
- import 'package:ht_api/src/rbac/permission_service.dart' ;
6
- import 'package:ht_api/src/registry/model_registry.dart' ;
7
- import 'package:ht_api/src/services/dashboard_summary_service.dart' ;
8
- import 'package:ht_api/src/services/user_preference_limit_service.dart' ; // Import UserPreferenceLimitService
9
- import 'package:ht_data_repository/ht_data_repository.dart' ;
10
- import 'package:ht_shared/ht_shared.dart' ;
5
+ import 'package:data_repository/data_repository.dart' ;
6
+ import 'package:flutter_news_app_api_server_full_source_code/src/helpers/response_helper.dart' ;
7
+ import 'package:flutter_news_app_api_server_full_source_code/src/rbac/permission_service.dart' ;
8
+ import 'package:flutter_news_app_api_server_full_source_code/src/registry/model_registry.dart' ;
9
+ import 'package:flutter_news_app_api_server_full_source_code/src/services/dashboard_summary_service.dart' ;
10
+ import 'package:flutter_news_app_api_server_full_source_code/src/services/user_preference_limit_service.dart' ; // Import UserPreferenceLimitService
11
11
import 'package:logging/logging.dart' ;
12
12
13
13
// Create a logger for this file.
@@ -96,28 +96,28 @@ Future<Response> _handleGet(
96
96
// main onRequest try/catch (which is now removed, so they go to errorHandler).
97
97
switch (modelName) {
98
98
case 'headline' :
99
- final repo = context.read <HtDataRepository <Headline >>();
99
+ final repo = context.read <DataRepository <Headline >>();
100
100
item = await repo.read (id: id, userId: userIdForRepoCall);
101
101
case 'topic' :
102
- final repo = context.read <HtDataRepository <Topic >>();
102
+ final repo = context.read <DataRepository <Topic >>();
103
103
item = await repo.read (id: id, userId: userIdForRepoCall);
104
104
case 'source' :
105
- final repo = context.read <HtDataRepository <Source >>();
105
+ final repo = context.read <DataRepository <Source >>();
106
106
item = await repo.read (id: id, userId: userIdForRepoCall);
107
107
case 'country' :
108
- final repo = context.read <HtDataRepository <Country >>();
108
+ final repo = context.read <DataRepository <Country >>();
109
109
item = await repo.read (id: id, userId: userIdForRepoCall);
110
110
case 'user' : // Handle User model specifically if needed, or rely on generic
111
- final repo = context.read <HtDataRepository <User >>();
111
+ final repo = context.read <DataRepository <User >>();
112
112
item = await repo.read (id: id, userId: userIdForRepoCall);
113
113
case 'user_app_settings' : // New case for UserAppSettings
114
- final repo = context.read <HtDataRepository <UserAppSettings >>();
114
+ final repo = context.read <DataRepository <UserAppSettings >>();
115
115
item = await repo.read (id: id, userId: userIdForRepoCall);
116
116
case 'user_content_preferences' : // New case for UserContentPreferences
117
- final repo = context.read <HtDataRepository <UserContentPreferences >>();
117
+ final repo = context.read <DataRepository <UserContentPreferences >>();
118
118
item = await repo.read (id: id, userId: userIdForRepoCall);
119
119
case 'remote_config' : // New case for RemoteConfig (read by admin)
120
- final repo = context.read <HtDataRepository <RemoteConfig >>();
120
+ final repo = context.read <DataRepository <RemoteConfig >>();
121
121
item = await repo.read (
122
122
id: id,
123
123
userId: userIdForRepoCall,
@@ -240,7 +240,7 @@ Future<Response> _handlePut(
240
240
authenticatedUser,
241
241
itemToUpdate,
242
242
);
243
- } on HtHttpException {
243
+ } on HttpException {
244
244
// Propagate known exceptions from the limit service (e.g., ForbiddenException)
245
245
rethrow ;
246
246
} catch (e, s) {
@@ -275,7 +275,7 @@ Future<Response> _handlePut(
275
275
switch (modelName) {
276
276
case 'headline' :
277
277
{
278
- final repo = context.read <HtDataRepository <Headline >>();
278
+ final repo = context.read <DataRepository <Headline >>();
279
279
updatedItem = await repo.update (
280
280
id: id,
281
281
item: itemToUpdate as Headline ,
@@ -284,7 +284,7 @@ Future<Response> _handlePut(
284
284
}
285
285
case 'topic' :
286
286
{
287
- final repo = context.read <HtDataRepository <Topic >>();
287
+ final repo = context.read <DataRepository <Topic >>();
288
288
updatedItem = await repo.update (
289
289
id: id,
290
290
item: itemToUpdate as Topic ,
@@ -293,7 +293,7 @@ Future<Response> _handlePut(
293
293
}
294
294
case 'source' :
295
295
{
296
- final repo = context.read <HtDataRepository <Source >>();
296
+ final repo = context.read <DataRepository <Source >>();
297
297
updatedItem = await repo.update (
298
298
id: id,
299
299
item: itemToUpdate as Source ,
@@ -302,7 +302,7 @@ Future<Response> _handlePut(
302
302
}
303
303
case 'country' :
304
304
{
305
- final repo = context.read <HtDataRepository <Country >>();
305
+ final repo = context.read <DataRepository <Country >>();
306
306
updatedItem = await repo.update (
307
307
id: id,
308
308
item: itemToUpdate as Country ,
@@ -311,7 +311,7 @@ Future<Response> _handlePut(
311
311
}
312
312
case 'user' :
313
313
{
314
- final repo = context.read <HtDataRepository <User >>();
314
+ final repo = context.read <DataRepository <User >>();
315
315
updatedItem = await repo.update (
316
316
id: id,
317
317
item: itemToUpdate as User ,
@@ -320,7 +320,7 @@ Future<Response> _handlePut(
320
320
}
321
321
case 'user_app_settings' : // New case for UserAppSettings
322
322
{
323
- final repo = context.read <HtDataRepository <UserAppSettings >>();
323
+ final repo = context.read <DataRepository <UserAppSettings >>();
324
324
updatedItem = await repo.update (
325
325
id: id,
326
326
item: itemToUpdate as UserAppSettings ,
@@ -329,7 +329,7 @@ Future<Response> _handlePut(
329
329
}
330
330
case 'user_content_preferences' : // New case for UserContentPreferences
331
331
{
332
- final repo = context.read <HtDataRepository <UserContentPreferences >>();
332
+ final repo = context.read <DataRepository <UserContentPreferences >>();
333
333
updatedItem = await repo.update (
334
334
id: id,
335
335
item: itemToUpdate as UserContentPreferences ,
@@ -338,7 +338,7 @@ Future<Response> _handlePut(
338
338
}
339
339
case 'remote_config' : // New case for RemoteConfig (update by admin)
340
340
{
341
- final repo = context.read <HtDataRepository <RemoteConfig >>();
341
+ final repo = context.read <DataRepository <RemoteConfig >>();
342
342
updatedItem = await repo.update (
343
343
id: id,
344
344
item: itemToUpdate as RemoteConfig ,
@@ -443,28 +443,28 @@ Future<Response> _handleDelete(
443
443
// Repository exceptions (like NotFoundException) will propagate up to the errorHandler.
444
444
switch (modelName) {
445
445
case 'headline' :
446
- final repo = context.read <HtDataRepository <Headline >>();
446
+ final repo = context.read <DataRepository <Headline >>();
447
447
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
448
448
case 'topic' :
449
- final repo = context.read <HtDataRepository <Topic >>();
449
+ final repo = context.read <DataRepository <Topic >>();
450
450
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
451
451
case 'source' :
452
- final repo = context.read <HtDataRepository <Source >>();
452
+ final repo = context.read <DataRepository <Source >>();
453
453
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
454
454
case 'country' :
455
- final repo = context.read <HtDataRepository <Country >>();
455
+ final repo = context.read <DataRepository <Country >>();
456
456
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
457
457
case 'user' :
458
- final repo = context.read <HtDataRepository <User >>();
458
+ final repo = context.read <DataRepository <User >>();
459
459
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
460
460
case 'user_app_settings' : // New case for UserAppSettings
461
- final repo = context.read <HtDataRepository <UserAppSettings >>();
461
+ final repo = context.read <DataRepository <UserAppSettings >>();
462
462
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
463
463
case 'user_content_preferences' : // New case for UserContentPreferences
464
- final repo = context.read <HtDataRepository <UserContentPreferences >>();
464
+ final repo = context.read <DataRepository <UserContentPreferences >>();
465
465
itemToDelete = await repo.read (id: id, userId: userIdForRepoCall);
466
466
case 'remote_config' : // New case for RemoteConfig (delete by admin)
467
- final repo = context.read <HtDataRepository <RemoteConfig >>();
467
+ final repo = context.read <DataRepository <RemoteConfig >>();
468
468
itemToDelete = await repo.read (
469
469
id: id,
470
470
userId: userIdForRepoCall,
@@ -498,42 +498,42 @@ Future<Response> _handleDelete(
498
498
// upwards to be handled by the standard error handling mechanism.
499
499
switch (modelName) {
500
500
case 'headline' :
501
- await context.read <HtDataRepository <Headline >>().delete (
501
+ await context.read <DataRepository <Headline >>().delete (
502
502
id: id,
503
503
userId: userIdForRepoCall,
504
504
);
505
505
case 'topic' :
506
- await context.read <HtDataRepository <Topic >>().delete (
506
+ await context.read <DataRepository <Topic >>().delete (
507
507
id: id,
508
508
userId: userIdForRepoCall,
509
509
);
510
510
case 'source' :
511
- await context.read <HtDataRepository <Source >>().delete (
511
+ await context.read <DataRepository <Source >>().delete (
512
512
id: id,
513
513
userId: userIdForRepoCall,
514
514
);
515
515
case 'country' :
516
- await context.read <HtDataRepository <Country >>().delete (
516
+ await context.read <DataRepository <Country >>().delete (
517
517
id: id,
518
518
userId: userIdForRepoCall,
519
519
);
520
520
case 'user' :
521
- await context.read <HtDataRepository <User >>().delete (
521
+ await context.read <DataRepository <User >>().delete (
522
522
id: id,
523
523
userId: userIdForRepoCall,
524
524
);
525
525
case 'user_app_settings' : // New case for UserAppSettings
526
- await context.read <HtDataRepository <UserAppSettings >>().delete (
526
+ await context.read <DataRepository <UserAppSettings >>().delete (
527
527
id: id,
528
528
userId: userIdForRepoCall,
529
529
);
530
530
case 'user_content_preferences' : // New case for UserContentPreferences
531
- await context.read <HtDataRepository <UserContentPreferences >>().delete (
531
+ await context.read <DataRepository <UserContentPreferences >>().delete (
532
532
id: id,
533
533
userId: userIdForRepoCall,
534
534
);
535
535
case 'remote_config' : // New case for RemoteConfig (delete by admin)
536
- await context.read <HtDataRepository <RemoteConfig >>().delete (
536
+ await context.read <DataRepository <RemoteConfig >>().delete (
537
537
id: id,
538
538
userId: userIdForRepoCall,
539
539
); // userId should be null for AppConfig
0 commit comments