77import java .util .Map ;
88
99public class YmlConfig {
10- private static Map <String , Object > dataMap = new LinkedHashMap <>();
11-
1210 public YmlConfig () {
1311 saveDefaults ();
14- dataMap = _readMap ();
1512 }
1613
1714 private void saveDefaults () {
1815 genConfigFolder ();
1916 try {
20- _saveDefaults ();
17+ _saveDefaults (false );
2118 } catch (FileNotFoundException e ) {
2219 e .printStackTrace ();
2320 throw new RuntimeException (e );
@@ -34,9 +31,9 @@ private void genConfigFolder() {
3431 }
3532 }
3633
37- private void _saveDefaults () throws FileNotFoundException {
34+ private void _saveDefaults (boolean overwrite ) throws FileNotFoundException {
3835 File file = new File ("config/config.properties" );
39- if (!file .exists ()) {
36+ if (!file .exists () || overwrite ) {
4037 System .out .println ("Regenerating config" );
4138 Map <String , Object > data = new LinkedHashMap <>();
4239 data .put ("API_KEY" , "null" );
@@ -83,6 +80,7 @@ public Map<String, Object> _readMap() {
8380 Map <String , Object > map ;
8481 try {
8582 map = _load ();
83+ System .out .println ("Map: " + map );
8684 } catch (FileNotFoundException e ) {
8785 e .printStackTrace ();
8886 throw new RuntimeException (e );
@@ -93,6 +91,11 @@ public Map<String, Object> _readMap() {
9391 private Map <String , Object > _load () throws FileNotFoundException {
9492 InputStream inputStream = new FileInputStream ("config/config.properties" );
9593 Yaml yaml = new Yaml ();
94+ Map <String , Object > map = yaml .load (inputStream );
95+ if (map == null ) {
96+ _saveDefaults (true );
97+ return _load ();
98+ }
9699 return yaml .load (inputStream );
97100 }
98101
0 commit comments