MetaData.java

qijingxi
pbhqa7wr4 7 months ago
parent f27f1d5d8b
commit 30bfc40147

@ -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;
/**
* MetaDataTaskGoogle TasksGTask
*/
public class MetaData extends Task {
/**
* TAG
*/
private final static String TAG = MetaData.class.getSimpleName();
/**
* GTaskID
*/
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");
}
}
}
Loading…
Cancel
Save