|
6 | 6 | import java.time.LocalDate;
|
7 | 7 | import java.util.*;
|
8 | 8 |
|
| 9 | +/** |
| 10 | + * Klasa zawiera narzędzia dotyczące formatu JSON. |
| 11 | + * |
| 12 | + * @author Kamil Mularski |
| 13 | + * @see Loader |
| 14 | + * @see #loader(String) |
| 15 | + * @see #toJson(List) |
| 16 | + * @see #toJson(List, boolean) |
| 17 | + */ |
9 | 18 | public class JSON {
|
10 | 19 |
|
11 | 20 | private JSON() {}
|
12 | 21 |
|
| 22 | + /** |
| 23 | + * Zwraca obiekt wczytujący dane zapisane w formacie JSON. |
| 24 | + * |
| 25 | + * @param source dane zapisane w formacie JSON |
| 26 | + * @return obiekt wczytujący |
| 27 | + */ |
13 | 28 | public static Loader loader(String source) {
|
14 | 29 | return new Loader(JsonParser.parseString(source));
|
15 | 30 | }
|
16 | 31 |
|
| 32 | + /** |
| 33 | + * Klasa przechowuje wczytująca obiekty w formacie JSON i umożliwiająca zwrócenie ich w formie listy obiektów typu {@link FinalMFR}. |
| 34 | + * Stworzenie instancji klasy powinno się odbywać przez wywołanie metody {@link JSON#loader(String)}, ponieważ |
| 35 | + * konstruktor jest zabezpieczony. |
| 36 | + */ |
17 | 37 | public static class Loader {
|
18 | 38 | private final JsonElement main;
|
19 | 39 |
|
20 |
| - public Loader(JsonElement main) { |
| 40 | + private Loader(JsonElement main) { |
21 | 41 | this.main = main;
|
22 | 42 | }
|
23 | 43 |
|
@@ -54,10 +74,21 @@ private FinalMFR toMFR(Gson g, JsonObject jo) {
|
54 | 74 | }
|
55 | 75 | }
|
56 | 76 |
|
| 77 | + /** |
| 78 | + * Zapisuje listę {@link FinalMFR} do formatu JSON. |
| 79 | + * @param mfrs lista obiektów do zapisania |
| 80 | + * @return dane zapisane w formacie JSON |
| 81 | + */ |
57 | 82 | public static String toJson(List<FinalMFR> mfrs) {
|
58 | 83 | return toJson(mfrs, false);
|
59 | 84 | }
|
60 | 85 |
|
| 86 | + /** |
| 87 | + * Zapisuje listę {@link FinalMFR} do formatu JSON określając sposób zapisu. |
| 88 | + * @param mfrs lista obiektów do zapisania |
| 89 | + * @param prettyPrinting jeśli {@code true} wtedy zapis jest przyjazny dla człowieka, w przeciwnym razie – zapis pozbawiony zbędnych znaków |
| 90 | + * @return dane zapisane w formacie JSON |
| 91 | + */ |
61 | 92 | public static String toJson(List<FinalMFR> mfrs, boolean prettyPrinting) {
|
62 | 93 | GsonBuilder builder = new GsonBuilder();
|
63 | 94 | if (prettyPrinting) builder = builder.setPrettyPrinting();
|
|
0 commit comments