mirror of
https://github.com/openharmony/telephony_data_storage.git
synced 2026-07-01 08:11:48 -04:00
!248 move session table from local to telephony
Merge pull request !248 from wangwei/master
This commit is contained in:
@@ -125,6 +125,13 @@ private:
|
||||
*/
|
||||
void CreateMmsPartTableStr(std::string &createTableStr);
|
||||
|
||||
/**
|
||||
* Create Session table
|
||||
*
|
||||
* @param createTableStr Create table statement
|
||||
*/
|
||||
void CreateSessionTableStr(std::string &createTableStr);
|
||||
|
||||
private:
|
||||
const std::string DB_NAME = "sms_mms.db";
|
||||
std::string dbPath_ = FOLDER_PATH + DB_NAME;
|
||||
|
||||
@@ -43,7 +43,7 @@ class ValuesBucket;
|
||||
}
|
||||
namespace Telephony {
|
||||
enum class MessageUriType {
|
||||
UNKNOW, SMS_MMS, THIRTY, MAX_GROUP, UNREAD_TOTAL, MMS_PROTOCOL, SMS_SUBSECTION, MMS_PART
|
||||
UNKNOW, SMS_MMS, THIRTY, MAX_GROUP, UNREAD_TOTAL, MMS_PROTOCOL, SMS_SUBSECTION, MMS_PART, SESSION
|
||||
};
|
||||
class SmsMmsAbility : public DataShare::DataShareExtAbility {
|
||||
public:
|
||||
|
||||
@@ -99,10 +99,28 @@ public:
|
||||
static constexpr const char *CONTENT = "content";
|
||||
};
|
||||
|
||||
class Session {
|
||||
public:
|
||||
static constexpr const char *ID = "id";
|
||||
static constexpr const char *TIME = "time";
|
||||
static constexpr const char *TELEPHONE = "telephone";
|
||||
static constexpr const char *CONTENT = "content";
|
||||
static constexpr const char *CONTACTS_NUM = "contacts_num";
|
||||
static constexpr const char *SMS_TYPE = "sms_type";
|
||||
static constexpr const char *UNREAD_COUNT = "unread_count";
|
||||
static constexpr const char *SENDING_STATUS = "sending_status";
|
||||
static constexpr const char *HAS_DRAFT = "has_draft";
|
||||
static constexpr const char *HAS_LOCK = "has_lock";
|
||||
static constexpr const char *MESSAGE_COUNT = "message_count";
|
||||
static constexpr const char *HAS_MMS = "has_mms";
|
||||
static constexpr const char *HAS_ATTACHMENT = "has_attachment";
|
||||
};
|
||||
|
||||
constexpr const char *TABLE_SMS_MMS_INFO = "sms_mms_info";
|
||||
constexpr const char *TABLE_SMS_SUBSECTION = "sms_subsection";
|
||||
constexpr const char *TABLE_MMS_PROTOCOL = "mms_protocol";
|
||||
constexpr const char *TABLE_MMS_PART = "mms_part";
|
||||
constexpr const char *TABLE_SESSION = "session";
|
||||
constexpr const char *SMS_MMS_URI = "datashare:///com.ohos.smsmmsability";
|
||||
} // namespace Telephony
|
||||
} // namespace OHOS
|
||||
|
||||
@@ -45,11 +45,14 @@ int RdbSmsMmsHelper::Init()
|
||||
CreateSmsSubsectionTableStr(smsSubsectionStr);
|
||||
std::string mmsPartStr;
|
||||
CreateMmsPartTableStr(mmsPartStr);
|
||||
std::string sessionStr;
|
||||
CreateSessionTableStr(sessionStr);
|
||||
std::vector<std::string> createTableVec;
|
||||
createTableVec.push_back(messageInfoStr);
|
||||
createTableVec.push_back(mmsProtocolStr);
|
||||
createTableVec.push_back(smsSubsectionStr);
|
||||
createTableVec.push_back(mmsPartStr);
|
||||
createTableVec.push_back(sessionStr);
|
||||
RdbSmsMmsCallback callback(createTableVec);
|
||||
CreateRdbStore(config, VERSION, callback, errCode);
|
||||
return errCode;
|
||||
@@ -149,6 +152,24 @@ void RdbSmsMmsHelper::CreateMmsPartTableStr(std::string &createTableStr)
|
||||
createTableStr.append(") on delete cascade on update cascade )");
|
||||
}
|
||||
|
||||
void RdbSmsMmsHelper::CreateSessionTableStr(std::string &createTableStr)
|
||||
{
|
||||
createTableStr.append("CREATE TABLE IF NOT EXISTS ").append(TABLE_SESSION);
|
||||
createTableStr.append("(").append(Session::ID).append(" INTEGER PRIMARY KEY AUTOINCREMENT, ");
|
||||
createTableStr.append(Session::TIME).append(" INTEGER DEFAULT 0, ");
|
||||
createTableStr.append(Session::TELEPHONE).append(" TEXT , ");
|
||||
createTableStr.append(Session::CONTENT).append(" TEXT , ");
|
||||
createTableStr.append(Session::CONTACTS_NUM).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::SMS_TYPE).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::UNREAD_COUNT).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::SENDING_STATUS).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::HAS_DRAFT).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::HAS_LOCK).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::MESSAGE_COUNT).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::HAS_MMS).append(" INTEGER DEFAULT 0 , ");
|
||||
createTableStr.append(Session::HAS_ATTACHMENT).append(" INTEGER DEFAULT 0 )");
|
||||
}
|
||||
|
||||
void RdbSmsMmsHelper::UpdateDbPath(const std::string &path)
|
||||
{
|
||||
dbPath_ = path + DB_NAME;
|
||||
|
||||
@@ -148,6 +148,10 @@ int SmsMmsAbility::Insert(const Uri &uri, const DataShare::DataShareValuesBucket
|
||||
helper_.Insert(id, values, TABLE_MMS_PART);
|
||||
break;
|
||||
}
|
||||
case MessageUriType::SESSION: {
|
||||
helper_.Insert(id, values, TABLE_SESSION);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
DATA_STORAGE_LOGI("SmsMmsAbility::Insert##uri = %{public}s", uri.ToString().c_str());
|
||||
break;
|
||||
@@ -184,6 +188,10 @@ std::shared_ptr<DataShare::DataShareResultSet> SmsMmsAbility::Query(
|
||||
absRdbPredicates = new NativeRdb::AbsRdbPredicates(TABLE_MMS_PART);
|
||||
break;
|
||||
}
|
||||
case MessageUriType::SESSION: {
|
||||
absRdbPredicates = new NativeRdb::AbsRdbPredicates(TABLE_SESSION);
|
||||
break;
|
||||
}
|
||||
case MessageUriType::MAX_GROUP: {
|
||||
resultSet = helper_.QueryMaxGroupId();
|
||||
auto queryResultSet = RdbDataShareAdapter::RdbUtils::ToResultSetBridge(resultSet);
|
||||
@@ -242,6 +250,10 @@ int SmsMmsAbility::Update(
|
||||
absRdbPredicates = new NativeRdb::AbsRdbPredicates(TABLE_MMS_PART);
|
||||
break;
|
||||
}
|
||||
case MessageUriType::SESSION: {
|
||||
absRdbPredicates = new NativeRdb::AbsRdbPredicates(TABLE_SESSION);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
DATA_STORAGE_LOGI("SmsMmsAbility::Update##uri = %{public}s", uri.ToString().c_str());
|
||||
break;
|
||||
@@ -294,6 +306,10 @@ int SmsMmsAbility::Delete(const Uri &uri, const DataShare::DataSharePredicates &
|
||||
absRdbPredicates = new NativeRdb::AbsRdbPredicates(TABLE_MMS_PART);
|
||||
break;
|
||||
}
|
||||
case MessageUriType::SESSION: {
|
||||
absRdbPredicates = new NativeRdb::AbsRdbPredicates(TABLE_SESSION);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
DATA_STORAGE_LOGI("SmsMmsAbility::Delete##uri = %{public}s", uri.ToString().c_str());
|
||||
break;
|
||||
@@ -329,7 +345,8 @@ void SmsMmsAbility::InitUriMap()
|
||||
{"/sms_mms/sms_mms_info/unread_total", MessageUriType::UNREAD_TOTAL},
|
||||
{"/sms_mms/mms_protocol", MessageUriType::MMS_PROTOCOL},
|
||||
{"/sms_mms/sms_subsection", MessageUriType::SMS_SUBSECTION},
|
||||
{"/sms_mms/mms_part", MessageUriType::MMS_PART}
|
||||
{"/sms_mms/mms_part", MessageUriType::MMS_PART},
|
||||
{"/sms_mms/session", MessageUriType::SESSION}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user