@@ -86,7 +86,7 @@ private void loadData() {
86
86
}
87
87
}
88
88
89
- private void saveMap (Map <?, ?> data , Path file ) {
89
+ private synchronized void saveMap (Map <?, ?> data , Path file ) {
90
90
try {
91
91
Files .createDirectories (file .getParent ());
92
92
try (Writer writer = Files .newBufferedWriter (file , StandardCharsets .UTF_8 )) {
@@ -100,7 +100,9 @@ private void saveMap(Map<?, ?> data, Path file) {
100
100
@ Override
101
101
public void setChatEnabled (UUID uuid , boolean enabled ) {
102
102
chatSettings .put (uuid , enabled );
103
- saveMap (chatSettings , chatSettingsFile );
103
+ synchronized (chatSettings ) {
104
+ saveMap (chatSettings , chatSettingsFile );
105
+ }
104
106
}
105
107
106
108
@ Override
@@ -111,7 +113,9 @@ public boolean isChatEnabled(UUID uuid) {
111
113
@ Override
112
114
public void setWhisperingEnabled (UUID uuid , boolean enabled ) {
113
115
whisperSettings .put (uuid , enabled );
114
- saveMap (whisperSettings , whisperSettingsFile );
116
+ synchronized (whisperSettings ) {
117
+ saveMap (whisperSettings , whisperSettingsFile );
118
+ }
115
119
}
116
120
117
121
@ Override
@@ -125,11 +129,15 @@ public HardReturn hardIgnorePlayer(UUID ignoringReceiver, UUID ignoredChatter) {
125
129
126
130
if (ignored .contains (ignoredChatter )) {
127
131
ignored .remove (ignoredChatter );
128
- saveMap (ignoreList , ignoreListFile );
132
+ synchronized (ignored ) {
133
+ saveMap (ignoreList , ignoreListFile );
134
+ }
129
135
return HardReturn .UN_IGNORE ;
130
136
} else {
131
137
ignored .add (ignoredChatter );
132
- saveMap (ignoreList , ignoreListFile );
138
+ synchronized (ignored ) {
139
+ saveMap (ignoreList , ignoreListFile );
140
+ }
133
141
return HardReturn .IGNORE ;
134
142
}
135
143
}
@@ -149,6 +157,8 @@ public List<UUID> getIgnoredList(UUID uuid) {
149
157
@ Override
150
158
public void clearIgnoredPlayers (UUID player ) {
151
159
ignoreList .remove (player );
152
- saveMap (ignoreList , ignoreListFile );
160
+ synchronized (ignoreList ) {
161
+ saveMap (ignoreList , ignoreListFile );
162
+ }
153
163
}
154
164
}
0 commit comments