mise en place dataStatic
This commit was merged in pull request #4.
This commit is contained in:
32
src/LittleTown.StaticDataAccess/StaticDataGetter.cs
Normal file
32
src/LittleTown.StaticDataAccess/StaticDataGetter.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System.Text.Json;
|
||||
using LittleTown.Core;
|
||||
using LittleTown.Core.Ports;
|
||||
|
||||
namespace LittleTown.StaticDataAcces;
|
||||
|
||||
/// <summary>
|
||||
/// Implementation du getter de données static en fichier local
|
||||
/// </summary>
|
||||
public class StaticDataGetter : IStaticDataGetter
|
||||
{
|
||||
|
||||
/// <inheritdoc/>
|
||||
public Board GetBoard(int version)
|
||||
{
|
||||
|
||||
string path = Path.Combine(Environment.CurrentDirectory, "../../../../LittleTown.StaticDataAccess/Data/Board1.json");
|
||||
string data = File.ReadAllText(path);
|
||||
Board board = JsonSerializer.Deserialize<Board>(data) ?? throw new JsonException("Cannot deserialize Board");
|
||||
return board;
|
||||
}
|
||||
|
||||
/// <inheritdoc/>
|
||||
public List<Building> GetBuildings()
|
||||
{
|
||||
string path = Path.Combine(Environment.CurrentDirectory, "../../../../LittleTown.StaticDataAccess/Data/Buildings.json");
|
||||
string data = System.IO.File.ReadAllText(path);
|
||||
List<Building> buildings = JsonSerializer.Deserialize<List<Building>>(data) ?? throw new JsonException("Cannot deserialize Buildings");
|
||||
|
||||
return buildings;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user