package com.airlock.iam.common.infrastructure.i18n;

import com.airlock.iam.base.misc.json.JsonCoding;
import java.io.BufferedReader;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Map;

public class FileI18nJsonLoader implements I18nJsonLoader {
   @Override
   public Map<String, Object> loadJson(String jsonResource) {
      Path resourceFile = Path.of(jsonResource);

      try (BufferedReader reader = Files.newBufferedReader(resourceFile, StandardCharsets.UTF_8)) {
         return JsonCoding.fromJson(reader);
      } catch (IOException e) {
         throw new IllegalStateException(e);
      }
   }
}
