Files
cinema-display/server/cinema/lib/feature/root/data/service/root.service.dart
Peter Siegmund 4ce471599b load trending images from tmdb at startup
- need TMDB_API_KEY as environment variable
- mount /cache for data persistence

Signed-off-by: Peter Siegmund <developer@mars3142.org>
2025-11-17 23:21:01 +01:00

26 lines
713 B
Dart

import 'package:cinema/feature/websocket/websocket.service.dart';
import 'package:cinema/injectable.dart';
import 'package:injectable/injectable.dart';
import 'package:shelf/shelf.dart';
import 'package:shelf_router/shelf_router.dart';
part 'root.service.g.dart';
@injectable
class RootService {
@Route.get('/')
Future<Response> getRoot(Request request) async {
final isWebSocket =
request.headers['connection']?.toLowerCase() == 'upgrade' &&
request.headers['upgrade']?.toLowerCase() == 'websocket';
if (isWebSocket) {
return getIt<WebSocketService>().handler(request);
}
return Response.ok('REST response');
}
Router get router => _$RootServiceRouter(this);
}