前三个添加了注释

zb_branch
zb.git 2 years ago
parent 00a3d1c66a
commit b39963dbf4

@ -14,48 +14,51 @@
* limitations under the License.
*/
package net.micode.notes.gtask.data;
package net.micode.notes.gtask.data;//包名声明:路径"net.micode.notes.gtask.data",文件中定义的类和接口都归属于这个包
import android.database.Cursor;
import android.util.Log;
import android.database.Cursor;//导入Android平台的数据库Cursor类的语句
import android.util.Log;//引入工具类Log来存放一些通用的、与业务逻辑无关的工具方法
import net.micode.notes.tool.GTaskStringUtils;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.JSONException; //引入"org.json.JSONException"类用于处理JSON格式数据的异常
import org.json.JSONObject; //表示和操作JSON对象
public class MetaData extends Task {
private final static String TAG = MetaData.class.getSimpleName();
private final static String TAG = MetaData.class.getSimpleName(); //用于在日志中标识当前类的名称
private String mRelatedGid = null;
public void setMeta(String gid, JSONObject metaInfo) {
try {
metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid);
} catch (JSONException e) {
try {
metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid);
} catch (JSONException e) { //如果出现 JSONException 异常,则会捕获并记录日志
Log.e(TAG, "failed to put related gid");
}
// try-catch 块中,将键值对 (GTaskStringUtils.META_HEAD_GTASK_ID, gid) 添加到传入的 metaInfo JSON 对象中。
setNotes(metaInfo.toString());
setName(GTaskStringUtils.META_NOTE_NAME);
}
public String getRelatedGid() {
return mRelatedGid;
}
}
@Override
//是一个Java注解用于告诉编译器该方法是重写父类或接口中的方法。
public boolean isWorthSaving() {
return getNotes() != null;
}
@Override
public void setContentByRemoteJSON(JSONObject js) {
super.setContentByRemoteJSON(js);
super.setContentByRemoteJSON(js); //调用父类的方法传入参数js
if (getNotes() != null) {
try {
JSONObject metaInfo = new JSONObject(getNotes().trim());
mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID);
JSONObject metaInfo = new JSONObject(getNotes().trim());//转化为JSONObject对象
mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID); //提取特征字段
} catch (JSONException e) {
Log.w(TAG, "failed to get related gid");
mRelatedGid = null;
@ -63,6 +66,7 @@ public class MetaData extends Task {
}
}
//以下三段表示不应该被调用如果调用了抛出了一个IllegalAccessError异常并提供了错误消息
@Override
public void setContentByLocalJSON(JSONObject js) {
// this function should not be called

@ -38,33 +38,35 @@ public abstract class Node {
public static final int SYNC_ACTION_UPDATE_CONFLICT = 7;
public static final int SYNC_ACTION_ERROR = 8;
//不同数字表示进行不同操作
private String mGid;
private String mGid;
private String mName;
private long mLastModified;
private long mLastModified;
private boolean mDeleted;
//节点的相关信息
public Node() {
mGid = null;
mName = "";
mLastModified = 0;
mDeleted = false;
}
}//初始化
public abstract JSONObject getCreateAction(int actionId);
public abstract JSONObject getUpdateAction(int actionId);
public abstract void setContentByRemoteJSON(JSONObject js);
public abstract void setContentByRemoteJSON(JSONObject js); //根据远程的 JSON 对象设置内容
public abstract void setContentByLocalJSON(JSONObject js);
public abstract JSONObject getLocalJSONFromContent();
public abstract JSONObject getLocalJSONFromContent(); //返回一个 JSON 对象,表示从当前内容中获取本地 JSON 数据
public abstract int getSyncAction(Cursor c);
public abstract int getSyncAction(Cursor c); //根据给定的 Cursor 返回一个 JSON 对象,表示同步操作
public void setGid(String gid) {
this.mGid = gid;

@ -16,7 +16,7 @@
package net.micode.notes.gtask.data;
import android.content.ContentResolver;
import android.content.ContentResolver; //应用程序需要访问其他应用的数据或者系统提供的数据时就会使用ContentResolver来进行数据访问操作
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Context;
@ -36,13 +36,18 @@ import org.json.JSONObject;
public class SqlData {
private static final String TAG = SqlData.class.getSimpleName();
private static final String TAG = SqlData.class.getSimpleName(); //得到类的简写名称存入字符串TAG中
private static final int INVALID_ID = -99999;
public static final String[] PROJECTION_DATA = new String[] {
DataColumns.ID, DataColumns.MIME_TYPE, DataColumns.CONTENT, DataColumns.DATA1,
DataColumns.DATA3
//DataColumns.ID表示查询结果中每个数据行的唯一标识符。
//DataColumns.MIME_TYPE表示查询结果中每个数据行的MIME类型。
//DataColumns.CONTENT表示查询结果中每个数据行的内容。 标识不同的数据列
//DataColumns.DATA1表示查询结果中每个数据行的第一个数据项。
//DataColumns.DATA3表示查询结果中每个数据行的第三个数据项。
};
public static final int DATA_ID_COLUMN = 0;
@ -54,6 +59,7 @@ public class SqlData {
public static final int DATA_CONTENT_DATA_1_COLUMN = 3;
public static final int DATA_CONTENT_DATA_3_COLUMN = 4;
//每个数据行中各个信息的位置
private ContentResolver mContentResolver;
@ -80,7 +86,7 @@ public class SqlData {
mDataContentData1 = 0;
mDataContentData3 = "";
mDiffDataValues = new ContentValues();
}
} //初始化SqlData对象的字段和属性
public SqlData(Context context, Cursor c) {
mContentResolver = context.getContentResolver();

Loading…
Cancel
Save