Skip to content

Commit 782bc10

Browse files
committed
2.0.0
1 parent 09c1d76 commit 782bc10

9 files changed

Lines changed: 70 additions & 77 deletions

File tree

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.javabaas</groupId>
88
<artifactId>javasdk</artifactId>
9-
<version>1.0.1</version>
9+
<version>2.0.0</version>
1010
<packaging>jar</packaging>
1111
<name>JavaBaas_SDK_Java</name>
1212
<description>JavaBaas_SDK_Java</description>

src/main/java/com/javabaas/javasdk/JBApp.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ public void done(boolean success, JBException e) {
207207
}
208208
}
209209

210-
public void resetKey(int type, JBUpdateCallback callback) {
210+
public void resetKeyInBackground(int type, JBUpdateCallback callback) {
211211
resetKeyToJavabaas(type, false, callback);
212212
}
213213

src/main/java/com/javabaas/javasdk/JBAuth.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ public JBAuth(Map<String, Object> m) {
1111
super(m);
1212
}
1313

14+
public JBAuth() {
15+
super();
16+
}
17+
1418
public void setAccessToken(String accessToken) {
1519
put("accessToken", accessToken);
1620
}
@@ -43,14 +47,26 @@ public void setUnionId(String unionId) {
4347
put("unionId", unionId);
4448
}
4549

50+
public void setEncryptedData(String encryptedData) {
51+
put("encryptedData", encryptedData);
52+
}
53+
4654
public String getEncryptedData() {
4755
return (String) get("encryptedData");
4856
}
4957

58+
public void setCode(String code) {
59+
put("code", code);
60+
}
61+
5062
public String getCode() {
5163
return (String) get("code");
5264
}
5365

66+
public void setIv(String iv) {
67+
put("iv", iv);
68+
}
69+
5470
public String getIV() {
5571
return (String) get("iv");
5672
}

src/main/java/com/javabaas/javasdk/JBField.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -395,5 +395,6 @@ public boolean isRequired() {
395395
public void setRequired(boolean required) {
396396
this.required = required;
397397
}
398+
398399
}
399400
}

src/main/java/com/javabaas/javasdk/JBFile.java

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ public void setName(String name) {
3535

3636
public JBFile(){
3737
super(fileClassName());
38-
3938
}
4039

4140
public JBFile(String name, String url) {
@@ -74,11 +73,21 @@ public static JBFile fileFromMap(Map<String, Object> map) {
7473

7574
@Override
7675
public String toString() {
77-
return "{" +
78-
"\"className\":\"" + className + "\"" +
79-
", \"objectId\":\"" + objectId + "\"" +
80-
", \"url\":\"" + url + "\"" +
81-
", \"name\":\"" + name + "\"" +
82-
'}';
76+
StringBuffer stringBuffer = new StringBuffer();
77+
stringBuffer.append("{");
78+
if (!JBUtils.isEmpty(className)) {
79+
stringBuffer.append("\"className\":\"" + className + "\"");
80+
}
81+
if (!JBUtils.isEmpty(objectId)) {
82+
stringBuffer.append(", \"objectId\":\"" + objectId + "\"");
83+
}
84+
if (!JBUtils.isEmpty(url)) {
85+
stringBuffer.append(", \"url\":\"" + url + "\"");
86+
}
87+
if (!JBUtils.isEmpty(name)) {
88+
stringBuffer.append(", \"name\":\"" + name + "\"");
89+
}
90+
stringBuffer.append("}");
91+
return stringBuffer.toString();
8392
}
8493
}

src/main/java/com/javabaas/javasdk/JBObject.java

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ public void setQuery(JBQuery query) {
7676
transient protected JBAcl acl;
7777

7878
Map<String, Object> serverData;
79+
Map<String, Object> saveData;
7980
Map<String, JBOperator> operationQueue;
8081

8182
public Map<String, Object> getServerData() {
@@ -144,6 +145,7 @@ public void setAcl(JBAcl acl) {
144145
public JBObject() {
145146
objectId = "";
146147
serverData = new HashMap<>();
148+
saveData = new HashMap<>();
147149
operationQueue = new HashMap<>();
148150
}
149151

@@ -158,6 +160,7 @@ public void put(final String key, final Object value) {
158160
lock.writeLock().lock();
159161
if (checkKey(key)) {
160162
serverData.put(key, value);
163+
updateSaveData(key, value);
161164
}
162165
} catch (Exception e) {
163166
JBLogUtil.log.w("数据处理错误");
@@ -166,14 +169,27 @@ public void put(final String key, final Object value) {
166169
}
167170
}
168171

172+
private void updateSaveData(String key, Object value) {
173+
if (value == null) {
174+
saveData.remove(key);
175+
} else if (value instanceof JBFile || value instanceof JBUser || value instanceof JBObject) {
176+
Map<String, Object> map = new HashMap<>();
177+
map.put("__type", value instanceof JBFile ? "File" : "Pointer");
178+
map.put("className", ((JBObject)value).getClassName());
179+
map.put("_id", ((JBObject)value).getObjectId());
180+
saveData.put(key, map);
181+
} else {
182+
saveData.put(key, value);
183+
}
184+
}
185+
169186
private boolean checkKey(String key) {
170187
if (JBUtils.isEmpty(key))
171188
throw new IllegalArgumentException("字段为空");
172189
if (key.startsWith("_")) {
173190
throw new IllegalArgumentException("字段不能以'_'开头");
174191
}
175192
if (INVALID_KEYS.contains(key)) {
176-
// JBLogUtil.log.w(key + "为不可用字段");
177193
return false;
178194
}
179195
return true;
@@ -334,7 +350,7 @@ private void saveObjectToJavaBaas(final boolean sync, final JBSaveCallback callb
334350
}
335351
}
336352
}
337-
Map<String, Object> body = getObjectBody();
353+
Map<String, Object> body = getObjectForSaveBody();
338354
JBHttpClient.INSTANCE().sendRequest(urlPath, method, jbHttpParams, body, sync, new JBObjectCallback() {
339355
@Override
340356
public void onSuccess(JBResult result) {
@@ -356,13 +372,13 @@ public void onFailure(JBException error) {
356372
});
357373
}
358374

359-
protected Map<String, Object> getObjectBody() {
375+
protected Map<String, Object> getObjectForSaveBody() {
360376
Map<String, Object> body = new HashMap<>();
361377
if (this.acl != null) {
362378
body.putAll(acl.getAclMap());
363379
}
364-
if (this.serverData.size() > 0) {
365-
body.putAll(this.serverData);
380+
if (this.saveData.size() > 0) {
381+
body.putAll(this.saveData);
366382
}
367383
if (this.operationQueue.size() > 0) {
368384
body.putAll(this.operationQueue);
@@ -429,14 +445,6 @@ protected void copyFromMap(Map<String, Object> map) {
429445
}
430446
}
431447

432-
public Map<String, Object> getPointer() {
433-
if (JBUtils.isEmpty(className) || JBUtils.isEmpty(objectId)) {
434-
return null;
435-
}
436-
return new JBPointer(className, objectId);
437-
}
438-
439-
440448
@Override
441449
public String toString() {
442450
String serverDataStr = "";

src/main/java/com/javabaas/javasdk/JBPointer.java

Lines changed: 0 additions & 47 deletions
This file was deleted.

src/main/java/com/javabaas/javasdk/JBQueryConditions.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,14 @@ private void removeSameOperation(List<JBQueryOperation> ops, JBQueryOperation op
274274

275275
public void whereEqualTo(String key, Object value) {
276276
if (value instanceof JBObject) {
277-
addWhereItem(key, JBQueryOperation.EQUAL_OP, ((JBObject) value).getPointer());
277+
JBObject object = (JBObject) value;
278+
if (!JBUtils.isEmpty(object.className) && !JBUtils.isEmpty(object.objectId)) {
279+
Map<String, Object> pointer = new HashMap<>();
280+
pointer.put("__type", "Pointer");
281+
pointer.put("className", object.className);
282+
pointer.put("_id", object.objectId);
283+
addWhereItem(key, JBQueryOperation.EQUAL_OP, pointer);
284+
}
278285
} else {
279286
addWhereItem(key, JBQueryOperation.EQUAL_OP, value);
280287
}

src/main/java/com/javabaas/javasdk/JBUser.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,11 @@ public void signUpInBackground(JBSignUpCallback callback) {
9696

9797
private void signUpFromJavabaas(final boolean sync, final JBSignUpCallback callback) {
9898
String path = JBHttpClient.getUserPath();
99-
Map<String, Object> body = this.getObjectBody();
99+
Map<String, Object> body = this.getObjectForSaveBody();
100100
sendRequestForSignUp(path, body, sync, callback);
101101
}
102102

103-
public void getSmsCode(String phone) throws JBException {
103+
public static void getSmsCode(String phone) throws JBException {
104104
getSmsCodeFromJavabaas(phone, true, new JBGetSmsCodeCallback() {
105105
@Override
106106
public void done(boolean success, JBException e) {
@@ -114,11 +114,11 @@ public void done(boolean success, JBException e) {
114114
}
115115
}
116116

117-
public void getSmsCodeInBackground(String phone, JBGetSmsCodeCallback callback) {
117+
public static void getSmsCodeInBackground(String phone, JBGetSmsCodeCallback callback) {
118118
getSmsCodeFromJavabaas(phone,false, callback);
119119
}
120120

121-
private void getSmsCodeFromJavabaas(final String phone, final boolean sync, final JBGetSmsCodeCallback callback) {
121+
private static void getSmsCodeFromJavabaas(final String phone, final boolean sync, final JBGetSmsCodeCallback callback) {
122122
if (JBUtils.isEmpty(phone)) {
123123
callback.done(false, new JBException(JBCode.REQUEST_PARAM_ERROR));
124124
return;
@@ -163,7 +163,7 @@ private void signUpWithSnsFromJavabaas(JBAuth auth, JBSnsType type, boolean sync
163163
String path = JBHttpClient.getUserPath("registerWithSns/" + type.getCode());
164164
Map<String, Object> body = new HashMap<>();
165165
body.put(AUTH, auth);
166-
body.put("user", getObjectBody());
166+
body.put("user", getObjectForSaveBody());
167167
sendRequestForSignUp(path, body, sync, callback);
168168
}
169169

@@ -326,7 +326,6 @@ public void onFailure(JBException error) {
326326

327327
/**
328328
* 重置用户sessionToken
329-
* 本方法需要master权限
330329
*
331330
* @param userId 用户id
332331
* @throws JBException 异常信息
@@ -424,7 +423,7 @@ private void updateFromJavabaas(final boolean sync, final JBUpdateCallback callb
424423
return;
425424
}
426425
String path = JBHttpClient.getUserPath(userId);
427-
Map<String, Object> body = getObjectBody();
426+
Map<String, Object> body = getObjectForSaveBody();
428427
JBHttpClient.INSTANCE().sendRequest(path, JBHttpMethod.PUT, null, body, sync, new JBObjectCallback() {
429428
@Override
430429
public void onSuccess(JBResult result) {

0 commit comments

Comments
 (0)