Skip to content

Commit 3451435

Browse files
danielsanfrJawnnypoo
authored andcommitted
Bugfix save user in batch (#964)
* Fix for #499 Signed-off-by: Daniel San <[email protected]> * Avoid code smell According to SonarLint this is a necessary change to avoid code smell: https://rules.sonarsource.com/java/tag/brain-overload/RSPEC-135 Signed-off-by: Daniel San <[email protected]>
1 parent 7417db5 commit 3451435

File tree

1 file changed

+20
-18
lines changed

1 file changed

+20
-18
lines changed

parse/src/main/java/com/parse/ParseObjectCurrentCoder.java

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ class ParseObjectCurrentCoder extends ParseObjectCoder {
2828
private static final String KEY_CLASS_NAME = "classname";
2929
private static final String KEY_CREATED_AT = "createdAt";
3030
private static final String KEY_UPDATED_AT = "updatedAt";
31+
private static final String KEY_ACL = "ACL";
3132
private static final String KEY_DATA = "data";
3233

3334
/*
@@ -155,27 +156,28 @@ public <T extends ParseObject.State.Init<?>> T decode(
155156
Iterator<?> keys = data.keys();
156157
while (keys.hasNext()) {
157158
String key = (String) keys.next();
158-
159-
if (key.equals(KEY_OBJECT_ID)) {
160-
String newObjectId = data.getString(key);
161-
builder.objectId(newObjectId);
162-
continue;
163-
}
164-
if (key.equals(KEY_CREATED_AT)) {
165-
builder.createdAt(ParseDateFormat.getInstance().parse(data.getString(key)));
166-
continue;
167-
}
168-
if (key.equals(KEY_UPDATED_AT)) {
169-
builder.updatedAt(ParseDateFormat.getInstance().parse(data.getString(key)));
170-
continue;
159+
switch (key) {
160+
case KEY_OBJECT_ID:
161+
String newObjectId = data.getString(key);
162+
builder.objectId(newObjectId);
163+
break;
164+
case KEY_CREATED_AT:
165+
builder.createdAt(ParseDateFormat.getInstance().parse(data.getString(key)));
166+
break;
167+
case KEY_UPDATED_AT:
168+
builder.updatedAt(ParseDateFormat.getInstance().parse(data.getString(key)));
169+
break;
170+
case KEY_ACL:
171+
ParseACL acl = ParseACL.createACLFromJSONObject(data.getJSONObject(key), decoder);
172+
builder.put(KEY_ACL, acl);
173+
break;
174+
default:
175+
Object value = data.get(key);
176+
Object decodedObject = decoder.decode(value);
177+
builder.put(key, decodedObject);
171178
}
172-
173-
Object value = data.get(key);
174-
Object decodedObject = decoder.decode(value);
175-
builder.put(key, decodedObject);
176179
}
177180
}
178-
179181
return builder;
180182
} catch (JSONException e) {
181183
throw new RuntimeException(e);

0 commit comments

Comments
 (0)