Compare commits
2 Commits
ca1fece7ab
...
05744c37c3
Author | SHA1 | Date | |
---|---|---|---|
05744c37c3 | |||
e8ad6592f5 |
@ -1,5 +1,4 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:minecraft_server_installer/main/framework/ui/strings.dart';
|
|
||||||
import 'package:minecraft_server_installer/vanila/adapter/presentation/game_version_view_model.dart';
|
import 'package:minecraft_server_installer/vanila/adapter/presentation/game_version_view_model.dart';
|
||||||
import 'package:minecraft_server_installer/vanila/framework/ui/game_version_dropdown.dart';
|
import 'package:minecraft_server_installer/vanila/framework/ui/game_version_dropdown.dart';
|
||||||
|
|
||||||
@ -15,12 +14,6 @@ class _BasicConfigurationTabState extends State<BasicConfigurationTab> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return const Column(
|
return const Column(children: [GameVersionDropdown(onChanged: print)]);
|
||||||
children: [
|
|
||||||
GameVersionDropdown(onChanged: print),
|
|
||||||
Spacer(),
|
|
||||||
ElevatedButton(onPressed: null, child: Text(Strings.buttonStartToInstall)),
|
|
||||||
],
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
abstract class Strings {
|
abstract class Strings {
|
||||||
static const fieldGameVersion = '遊戲版本';
|
static const fieldGameVersion = '遊戲版本';
|
||||||
static const buttonStartToInstall = '開始安裝';
|
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:minecraft_server_installer/main/framework/ui/minecraft_server_installer.dart';
|
import 'package:minecraft_server_installer/main/framework/ui/minecraft_server_installer.dart';
|
||||||
|
import 'package:minecraft_server_installer/vanila/framework/api/game_version_api_service_impl.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
|
final apiService = GameVersionApiServiceImpl();
|
||||||
|
apiService.fetchGameVersionList();
|
||||||
runApp(const MinecraftServerInstaller());
|
runApp(const MinecraftServerInstaller());
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,5 @@
|
|||||||
import 'dart:typed_data';
|
|
||||||
|
|
||||||
import 'package:minecraft_server_installer/vanila/domain/entity/game_version.dart';
|
import 'package:minecraft_server_installer/vanila/domain/entity/game_version.dart';
|
||||||
|
|
||||||
abstract interface class GameVersionApiService {
|
abstract interface class GameVersionApiService {
|
||||||
Future<List<GameVersion>> fetchGameVersionList();
|
Future<List<GameVersion>> fetchGameVersionList();
|
||||||
|
|
||||||
Future<Uint8List> fetchServerFile(Uri url);
|
|
||||||
}
|
}
|
||||||
|
@ -9,9 +9,4 @@ class GameVersionRepositoryImpl implements GameVersionRepository {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Future<List<GameVersion>> getGameVersionList() => _gameVersionApiService.fetchGameVersionList();
|
Future<List<GameVersion>> getGameVersionList() => _gameVersionApiService.fetchGameVersionList();
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> downloadServerFile(GameVersion version, String savePath) async {
|
|
||||||
final fileBytes = await _gameVersionApiService.fetchServerFile(version.url);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,4 @@ import 'package:minecraft_server_installer/vanila/domain/entity/game_version.dar
|
|||||||
|
|
||||||
abstract interface class GameVersionRepository {
|
abstract interface class GameVersionRepository {
|
||||||
Future<List<GameVersion>> getGameVersionList();
|
Future<List<GameVersion>> getGameVersionList();
|
||||||
|
|
||||||
Future<void> downloadServerFile(GameVersion version, String savePath);
|
|
||||||
}
|
}
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
import 'package:minecraft_server_installer/vanila/application/repository/game_version_repository.dart';
|
|
||||||
import 'package:minecraft_server_installer/vanila/domain/entity/game_version.dart';
|
|
||||||
|
|
||||||
class DownloadServerFileUseCase {
|
|
||||||
final GameVersionRepository _gameVersionRepository;
|
|
||||||
|
|
||||||
DownloadServerFileUseCase(this._gameVersionRepository);
|
|
||||||
|
|
||||||
Future<void> call(GameVersion version, String savePath) => _gameVersionRepository.downloadServerFile(version, savePath);
|
|
||||||
}
|
|
@ -1,5 +1,3 @@
|
|||||||
import 'dart:typed_data';
|
|
||||||
|
|
||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
import 'package:minecraft_server_installer/vanila/adapter/gateway/game_version_api_service.dart';
|
import 'package:minecraft_server_installer/vanila/adapter/gateway/game_version_api_service.dart';
|
||||||
import 'package:minecraft_server_installer/vanila/domain/entity/game_version.dart';
|
import 'package:minecraft_server_installer/vanila/domain/entity/game_version.dart';
|
||||||
@ -19,10 +17,4 @@ class GameVersionApiServiceImpl implements GameVersionApiService {
|
|||||||
|
|
||||||
return gameVersionList;
|
return gameVersionList;
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<Uint8List> fetchServerFile(Uri url) async {
|
|
||||||
final response = await http.get(url);
|
|
||||||
return response.bodyBytes;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user