You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
xiaomi/Node.java

116 lines
3.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/*
* Copyright (c) 2010 - 2011, The MiCode Open Source Community (www.micode.net)
*
* 遵循 Apache 许可证 2.0 版(“许可证”);
* 除非遵守许可证,否则不得使用此文件。
* 你可以在以下网址获取许可证副本:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* 除非适用法律要求或书面同意,
* 根据许可证分发的软件按“原样”分发,
* 不附带任何明示或暗示的保证或条件。
* 请参阅许可证,了解具体的权限和限制。
*/
package net.micode.notes.gtask.data;
import android.database.Cursor;
import org.json.JSONObject;
// 定义一个抽象类 Node作为一个基础类可能用于表示与 GTask 相关的数据节点
public abstract class Node {
// 定义同步操作的常量,表示无操作
public static final int SYNC_ACTION_NONE = 0;
// 定义同步操作的常量,表示在远程添加
public static final int SYNC_ACTION_ADD_REMOTE = 1;
// 定义同步操作的常量,表示在本地添加
public static final int SYNC_ACTION_ADD_LOCAL = 2;
// 定义同步操作的常量,表示在远程删除
public static final int SYNC_ACTION_DEL_REMOTE = 3;
// 定义同步操作的常量,表示在本地删除
public static final int SYNC_ACTION_DEL_LOCAL = 4;
// 定义同步操作的常量,表示在远程更新
public static final int SYNC_ACTION_UPDATE_REMOTE = 5;
// 定义同步操作的常量,表示在本地更新
public static final int SYNC_ACTION_UPDATE_LOCAL = 6;
// 定义同步操作的常量,表示更新冲突
public static final int SYNC_ACTION_UPDATE_CONFLICT = 7;
// 定义同步操作的常量,表示出现错误
public static final int SYNC_ACTION_ERROR = 8;
// 存储 GTask ID 的成员变量
private String mGid;
// 存储名称的成员变量
private String mName;
// 存储最后修改时间的成员变量
private long mLastModified;
// 存储是否删除标志的成员变量
private boolean mDeleted;
// 构造函数,初始化成员变量的默认值
public Node() {
mGid = null;
mName = "";
mLastModified = 0;
mDeleted = false;
}
// 抽象方法,根据给定的操作 ID 获取创建操作的 JSONObject
public abstract JSONObject getCreateAction(int actionId);
// 抽象方法,根据给定的操作 ID 获取更新操作的 JSONObject
public abstract JSONObject getUpdateAction(int actionId);
// 抽象方法,根据远程 JSON 数据设置内容
public abstract void setContentByRemoteJSON(JSONObject js);
// 抽象方法,根据本地 JSON 数据设置内容
public abstract void setContentByLocalJSON(JSONObject js);
// 抽象方法,从内容中获取本地 JSON 数据
public abstract JSONObject getLocalJSONFromContent();
// 抽象方法,根据 Cursor 获取同步操作
public abstract int getSyncAction(Cursor c);
// 设置 GTask ID 的方法
public void setGid(String gid) {
this.mGid = gid;
}
// 设置名称的方法
public void setName(String name) {
this.mName = name;
}
// 设置最后修改时间的方法
public void setLastModified(long lastModified) {
this.mLastModified = lastModified;
}
// 设置是否删除标志的方法
public void setDeleted(boolean deleted) {
this.mDeleted = deleted;
}
// 获取 GTask ID 的方法
public String getGid() {
return this.mGid;
}
// 获取名称的方法
public String getName() {
return this.mName;
}
// 获取最后修改时间的方法
public long getLastModified() {
return this.mLastModified;
}
// 获取是否删除标志的方法
public boolean getDeleted() {
return this.mDeleted;
}
}