Push LocalStorage (correction User/Auth Manager + saveToStorage)
continuous-integration/drone/push Build is failing Details

LocalManager
Louison PARANT 2 years ago
parent e386214b20
commit 8812237658

@ -8,7 +8,8 @@ class Game {
List<String> _playerImages = []; List<String> _playerImages = [];
// Constructor // Constructor
Game(this._id, this._time, this._pointsCurrentUser, this._isFinished, this._playerImages); Game(this._id, this._time, this._pointsCurrentUser, this._isFinished,
this._playerImages);
// Getters and setters // Getters and setters
Uuid get id => _id; Uuid get id => _id;
@ -40,4 +41,14 @@ class Game {
set playerImages(List<String> value) { set playerImages(List<String> value) {
_playerImages = value; _playerImages = value;
} }
toJSONEncodable() {
Map<String, dynamic> m = new Map();
m['id'] = id;
m['time'] = time;
m['images'] = playerImages;
return m;
}
} }

@ -79,4 +79,18 @@ class GameDetail {
set players(List<Player> value) { set players(List<Player> value) {
_players = value; _players = value;
} }
toJSONEncodable() {
Map<String, dynamic> m = new Map();
m['id'] = id;
m['time'] = time;
m['winner'] = winner;
m['nbPoints'] = nbPoints;
m['host'] = host;
m['rounds'] = rounds;
m['players'] = players;
return m;
}
} }

@ -1,17 +0,0 @@
library LocalLib;
import '../IAuthManager.dart';
import 'LocalData.dart';
class AuthManager extends IAuthManager {
final LocalData parent;
// Constructor
AuthManager(this.parent);
// Methods
@override
bool verifiedUser(String name, String password) {
return false;
}
}

@ -1,46 +1,47 @@
library LocalLib; library LocalLib;
import '../IManager.dart'; import '../IManager.dart';
import '../IUserManager.dart';
import '../IGameManager.dart'; import '../IGameManager.dart';
import '../Round.dart';
import '../Stat.dart';
import '../GameDetail.dart'; import '../GameDetail.dart';
import '../Game.dart'; import '../Game.dart';
import '../Achievement.dart';
import '../User.dart'; import '../User.dart';
import 'UserManager.dart';
import 'GameManager.dart'; import 'GameManager.dart';
import 'package:localstorage/localstorage.dart'; import 'package:localstorage/localstorage.dart';
class LocalData extends IManager { class LocalData extends IManager {
late IUserManager _userMgr;
late IGameManager _gameMgr; late IGameManager _gameMgr;
final LocalStorage storage = LocalStorage('local_key'); final LocalStorage storage = LocalStorage('local_key');
List<User> users = []; late User user;
List<GameDetail> gameDetails = []; List<GameDetail> gameDetails = [];
List<Game> games = []; List<Game> games = [];
_saveToStorage() { _saveToStorage() {
storage.setItem('users', toJSONEncodable()); storage.setItem('user', user.toJSONEncodable());
storage.setItem('games', toJSONEncodableGames());
storage.setItem('gameDetails', toJSONEncodableGameDetails());
} }
_clearStorage() async { _clearStorage() async {
await storage.clear(); await storage.clear();
} }
toJSONEncodable() { toJSONEncodableGames() {
return users.map((user) { return games.map((game) {
return user.toJSONEncodable(); return game.toJSONEncodable();
}).toList();
}
toJSONEncodableGameDetails() {
return gameDetails.map((gameDetail) {
return gameDetail.toJSONEncodable();
}).toList(); }).toList();
} }
LocalData() { LocalData() {
_userMgr = UserManager(this);
_gameMgr = GameManager(this); _gameMgr = GameManager(this);
users = storage.getItem('users'); user = storage.getItem('user');
games = storage.getItem('games'); games = storage.getItem('games');
gameDetails = storage.getItem('gameDetails'); gameDetails = storage.getItem('gameDetails');
} }

@ -1,38 +0,0 @@
library LocalLib;
import '../IUserManager.dart';
import '../IAuthManager.dart';
import 'AuthManager.dart';
import 'LocalData.dart';
import '../User.dart';
import 'package:uuid/uuid.dart';
class UserManager extends IUserManager {
final LocalData parent;
// Constructor
UserManager(this.parent) : super(AuthManager(parent));
// Methods
@override
List<User> getUsersByName(String name) {
List<User> returnList = [];
parent.users.forEach((element) {
if (element.name == name) {
returnList.add(element);
}
});
return returnList;
}
@override
User getUserById(Uuid id) {
var returnUser;
parent.users.forEach((element) {
if (element.id == id) {
returnUser = element;
}
});
return returnUser;
}
}

@ -43,11 +43,11 @@ class User extends Player {
Map<String, dynamic> m = new Map(); Map<String, dynamic> m = new Map();
m['id'] = id; m['id'] = id;
m['Name'] = name; m['name'] = name;
m['Mail'] = _mail; m['image'] = image;
m['Image'] = image; m['mail'] = mail;
m['Achievement'] = achievements; m['achievements'] = achievements;
m['Friends'] = friends; m['friends'] = friends;
m['Stat'] = stat; m['Stat'] = stat;
return m; return m;

Loading…
Cancel
Save