|
|
@ -15,7 +15,7 @@
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
package net.micode.notes.model;
|
|
|
|
package net.micode.notes.model;
|
|
|
|
import android.content.ContentProviderOperation;
|
|
|
|
import android.content.ContentProviderOperation;//操作
|
|
|
|
import android.content.ContentProviderResult;
|
|
|
|
import android.content.ContentProviderResult;
|
|
|
|
import android.content.ContentUris;
|
|
|
|
import android.content.ContentUris;
|
|
|
|
import android.content.ContentValues;
|
|
|
|
import android.content.ContentValues;
|
|
|
@ -49,8 +49,8 @@ public class Note {
|
|
|
|
values.put(NoteColumns.MODIFIED_DATE, createdTime);
|
|
|
|
values.put(NoteColumns.MODIFIED_DATE, createdTime);
|
|
|
|
values.put(NoteColumns.TYPE, Notes.TYPE_NOTE);
|
|
|
|
values.put(NoteColumns.TYPE, Notes.TYPE_NOTE);
|
|
|
|
values.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
values.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
values.put(NoteColumns.PARENT_ID, folderId);
|
|
|
|
values.put(NoteColumns.PARENT_ID, folderId);//写入数据
|
|
|
|
Uri uri = context.getContentResolver().insert(Notes.CONTENT_NOTE_URI, values);
|
|
|
|
Uri uri = context.getContentResolver().insert(Notes.CONTENT_NOTE_URI, values);//获取数据
|
|
|
|
|
|
|
|
|
|
|
|
long noteId = 0;
|
|
|
|
long noteId = 0;
|
|
|
|
try {
|
|
|
|
try {
|
|
|
@ -58,7 +58,7 @@ public class Note {
|
|
|
|
} catch (NumberFormatException e) {
|
|
|
|
} catch (NumberFormatException e) {
|
|
|
|
Log.e(TAG, "Get note id error :" + e.toString());
|
|
|
|
Log.e(TAG, "Get note id error :" + e.toString());
|
|
|
|
noteId = 0;
|
|
|
|
noteId = 0;
|
|
|
|
}
|
|
|
|
}//异常
|
|
|
|
if (noteId == -1) {
|
|
|
|
if (noteId == -1) {
|
|
|
|
throw new IllegalStateException("Wrong note id:" + noteId);
|
|
|
|
throw new IllegalStateException("Wrong note id:" + noteId);
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -68,37 +68,37 @@ public class Note {
|
|
|
|
public Note() {
|
|
|
|
public Note() {
|
|
|
|
mNoteDiffValues = new ContentValues();
|
|
|
|
mNoteDiffValues = new ContentValues();
|
|
|
|
mNoteData = new NoteData();
|
|
|
|
mNoteData = new NoteData();
|
|
|
|
}
|
|
|
|
}//定义便签属性和便签内容
|
|
|
|
|
|
|
|
|
|
|
|
public void setNoteValue(String key, String value) {
|
|
|
|
public void setNoteValue(String key, String value) {
|
|
|
|
mNoteDiffValues.put(key, value);
|
|
|
|
mNoteDiffValues.put(key, value);
|
|
|
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
|
|
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
|
|
|
}
|
|
|
|
}//设置值
|
|
|
|
|
|
|
|
|
|
|
|
public void setTextData(String key, String value) {
|
|
|
|
public void setTextData(String key, String value) {
|
|
|
|
mNoteData.setTextData(key, value);
|
|
|
|
mNoteData.setTextData(key, value);
|
|
|
|
}
|
|
|
|
}//设置数据
|
|
|
|
|
|
|
|
|
|
|
|
public void setTextDataId(long id) {
|
|
|
|
public void setTextDataId(long id) {
|
|
|
|
mNoteData.setTextDataId(id);
|
|
|
|
mNoteData.setTextDataId(id);
|
|
|
|
}
|
|
|
|
}//设置好 数据的ID
|
|
|
|
|
|
|
|
|
|
|
|
public long getTextDataId() {
|
|
|
|
public long getTextDataId() {
|
|
|
|
return mNoteData.mTextDataId;
|
|
|
|
return mNoteData.mTextDataId;
|
|
|
|
}
|
|
|
|
}//get文本数据的ID
|
|
|
|
|
|
|
|
|
|
|
|
public void setCallDataId(long id) {
|
|
|
|
public void setCallDataId(long id) {
|
|
|
|
mNoteData.setCallDataId(id);
|
|
|
|
mNoteData.setCallDataId(id);
|
|
|
|
}
|
|
|
|
}//设置呼叫的数据ID
|
|
|
|
|
|
|
|
|
|
|
|
public void setCallData(String key, String value) {
|
|
|
|
public void setCallData(String key, String value) {
|
|
|
|
mNoteData.setCallData(key, value);
|
|
|
|
mNoteData.setCallData(key, value);
|
|
|
|
}
|
|
|
|
}//设置呼叫数据
|
|
|
|
|
|
|
|
|
|
|
|
public boolean isLocalModified() {
|
|
|
|
public boolean isLocalModified() {
|
|
|
|
return mNoteDiffValues.size() > 0 || mNoteData.isLocalModified();
|
|
|
|
return mNoteDiffValues.size() > 0 || mNoteData.isLocalModified();
|
|
|
|
}
|
|
|
|
}//本地修改判断
|
|
|
|
|
|
|
|
|
|
|
|
public boolean syncNote(Context context, long noteId) {
|
|
|
|
public boolean syncNote(Context context, long noteId) {
|
|
|
|
if (noteId <= 0) {
|
|
|
|
if (noteId <= 0) {
|
|
|
@ -128,16 +128,16 @@ public class Note {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}//同步判断
|
|
|
|
|
|
|
|
|
|
|
|
private class NoteData {
|
|
|
|
private class NoteData {
|
|
|
|
private long mTextDataId;
|
|
|
|
private long mTextDataId;
|
|
|
|
|
|
|
|
|
|
|
|
private ContentValues mTextDataValues;
|
|
|
|
private ContentValues mTextDataValues;//文本数据值
|
|
|
|
|
|
|
|
|
|
|
|
private long mCallDataId;
|
|
|
|
private long mCallDataId;
|
|
|
|
|
|
|
|
|
|
|
|
private ContentValues mCallDataValues;
|
|
|
|
private ContentValues mCallDataValues;//呼叫数据值
|
|
|
|
|
|
|
|
|
|
|
|
private static final String TAG = "NoteData";
|
|
|
|
private static final String TAG = "NoteData";
|
|
|
|
|
|
|
|
|
|
|
@ -150,33 +150,33 @@ public class Note {
|
|
|
|
|
|
|
|
|
|
|
|
boolean isLocalModified() {
|
|
|
|
boolean isLocalModified() {
|
|
|
|
return mTextDataValues.size() > 0 || mCallDataValues.size() > 0;
|
|
|
|
return mTextDataValues.size() > 0 || mCallDataValues.size() > 0;
|
|
|
|
}
|
|
|
|
}//实现上面定义的方法
|
|
|
|
|
|
|
|
|
|
|
|
void setTextDataId(long id) {
|
|
|
|
void setTextDataId(long id) {
|
|
|
|
if(id <= 0) {
|
|
|
|
if(id <= 0) {
|
|
|
|
throw new IllegalArgumentException("Text data id should larger than 0");
|
|
|
|
throw new IllegalArgumentException("Text data id should larger than 0");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
mTextDataId = id;
|
|
|
|
mTextDataId = id;
|
|
|
|
}
|
|
|
|
}//实现上面定义的方法
|
|
|
|
|
|
|
|
|
|
|
|
void setCallDataId(long id) {
|
|
|
|
void setCallDataId(long id) {
|
|
|
|
if (id <= 0) {
|
|
|
|
if (id <= 0) {
|
|
|
|
throw new IllegalArgumentException("Call data id should larger than 0");
|
|
|
|
throw new IllegalArgumentException("Call data id should larger than 0");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
mCallDataId = id;
|
|
|
|
mCallDataId = id;
|
|
|
|
}
|
|
|
|
}//实现上面定义的方法
|
|
|
|
|
|
|
|
|
|
|
|
void setCallData(String key, String value) {
|
|
|
|
void setCallData(String key, String value) {
|
|
|
|
mCallDataValues.put(key, value);
|
|
|
|
mCallDataValues.put(key, value);
|
|
|
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
|
|
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
|
|
|
}
|
|
|
|
}//实现上面定义的方法
|
|
|
|
|
|
|
|
|
|
|
|
void setTextData(String key, String value) {
|
|
|
|
void setTextData(String key, String value) {
|
|
|
|
mTextDataValues.put(key, value);
|
|
|
|
mTextDataValues.put(key, value);
|
|
|
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
|
|
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
|
|
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
|
|
|
}
|
|
|
|
}//实现上面定义的方法
|
|
|
|
|
|
|
|
|
|
|
|
Uri pushIntoContentResolver(Context context, long noteId) {
|
|
|
|
Uri pushIntoContentResolver(Context context, long noteId) {
|
|
|
|
/**
|
|
|
|
/**
|
|
|
@ -245,9 +245,9 @@ public class Note {
|
|
|
|
} catch (OperationApplicationException e) {
|
|
|
|
} catch (OperationApplicationException e) {
|
|
|
|
Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
|
|
|
|
Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
|
|
|
|
return null;
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}//处理ContentProviderResult的异常
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return null;
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}//存储数据库
|
|
|
|
}
|
|
|
|
}//定义一个便签内容的数据类
|
|
|
|
}
|
|
|
|
}
|
|
|
|