From 30bfc40147c14734aeed0f356301c1d465b75f51 Mon Sep 17 00:00:00 2001 From: pbhqa7wr4 <2904615854@qq.com> Date: Mon, 30 Dec 2024 15:32:09 +0800 Subject: [PATCH] MetaData.java --- .../net/micode/notes/gtask/data/MetaData.java | 48 +++++++++++++++++-- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/src/Notes-master/Notes-master/src/net/micode/notes/gtask/data/MetaData.java b/src/Notes-master/Notes-master/src/net/micode/notes/gtask/data/MetaData.java index 3a2050b..3dba56c 100644 --- a/src/Notes-master/Notes-master/src/net/micode/notes/gtask/data/MetaData.java +++ b/src/Notes-master/Notes-master/src/net/micode/notes/gtask/data/MetaData.java @@ -13,7 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package net.micode.notes.gtask.data; import android.database.Cursor; @@ -24,36 +23,65 @@ import net.micode.notes.tool.GTaskStringUtils; import org.json.JSONException; import org.json.JSONObject; - +/** + * MetaData类继承自Task类,用于处理与Google Tasks(GTask)相关的元数据。 + */ public class MetaData extends Task { + /** + * 类的TAG,用于日志记录。 + */ private final static String TAG = MetaData.class.getSimpleName(); + /** + * 与GTask相关的ID。 + */ private String mRelatedGid = null; + /** + * 设置元数据信息。 + * @param gid 与元数据关联的ID。 + * @param metaInfo 包含元数据信息的JSONObject。 + */ public void setMeta(String gid, JSONObject metaInfo) { try { + // 将GTask的ID放入元数据中。 metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid); } catch (JSONException e) { Log.e(TAG, "failed to put related gid"); } + // 设置笔记内容为元数据的字符串表示。 setNotes(metaInfo.toString()); + // 设置笔记名称为特定的元数据名称。 setName(GTaskStringUtils.META_NOTE_NAME); } + /** + * 获取与元数据关联的GTask ID。 + * @return 相关的GTask ID。 + */ public String getRelatedGid() { return mRelatedGid; } + /** + * 判断当前对象是否值得保存。 + * @return 如果笔记内容不为空,则返回true。 + */ @Override public boolean isWorthSaving() { return getNotes() != null; } + /** + * 从远程JSON对象设置内容。 + * @param js 包含远程数据的JSONObject。 + */ @Override public void setContentByRemoteJSON(JSONObject js) { super.setContentByRemoteJSON(js); if (getNotes() != null) { try { + // 从笔记内容中提取元数据信息,并获取相关GTask ID。 JSONObject metaInfo = new JSONObject(getNotes().trim()); mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID); } catch (JSONException e) { @@ -63,20 +91,30 @@ public class MetaData extends Task { } } + /** + * 从本地JSON对象设置内容(不应该被调用)。 + */ @Override public void setContentByLocalJSON(JSONObject js) { - // this function should not be called + // 抛出异常,因为此方法不应该被调用。 throw new IllegalAccessError("MetaData:setContentByLocalJSON should not be called"); } + /** + * 从内容获取本地JSON对象(不应该被调用)。 + */ @Override public JSONObject getLocalJSONFromContent() { + // 抛出异常,因为此方法不应该被调用。 throw new IllegalAccessError("MetaData:getLocalJSONFromContent should not be called"); } + /** + * 获取同步操作(不应该被调用)。 + */ @Override public int getSyncAction(Cursor c) { + // 抛出异常,因为此方法不应该被调用。 throw new IllegalAccessError("MetaData:getSyncAction should not be called"); } - -} +} \ No newline at end of file