Chromium Code Reviews| Index: chrome/browser/sync/internal_api/sync_manager.cc |
| diff --git a/chrome/browser/sync/internal_api/sync_manager.cc b/chrome/browser/sync/internal_api/sync_manager.cc |
| index 6740e20e1b954cf73db455925904831157a77491..563c31e267379af4bab62e49bde7319dde134fb0 100644 |
| --- a/chrome/browser/sync/internal_api/sync_manager.cc |
| +++ b/chrome/browser/sync/internal_api/sync_manager.cc |
| @@ -165,11 +165,11 @@ class SyncManager::SyncInternal |
| "getNodeDetailsById", |
| &SyncManager::SyncInternal::GetNodeDetailsById); |
| BindJsMessageHandler( |
| + "getAllNodes", |
|
akalin
2012/03/29 18:41:43
i think adding a getAllNodes message won't work, b
rlarocque
2012/03/29 20:51:32
I understand your concern. I didn't expect this t
|
| + &SyncManager::SyncInternal::GetAllNodes); |
| + BindJsMessageHandler( |
| "getChildNodeIds", |
| &SyncManager::SyncInternal::GetChildNodeIds); |
| - BindJsMessageHandler( |
| - "findNodesContainingString", |
| - &SyncManager::SyncInternal::FindNodesContainingString); |
| } |
| virtual ~SyncInternal() { |
| @@ -510,10 +510,10 @@ class SyncManager::SyncInternal |
| JsArgList GetNotificationState(const JsArgList& args); |
| JsArgList GetNotificationInfo(const JsArgList& args); |
| JsArgList GetRootNodeDetails(const JsArgList& args); |
| + JsArgList GetAllNodes(const JsArgList& args); |
| JsArgList GetNodeSummariesById(const JsArgList& args); |
| JsArgList GetNodeDetailsById(const JsArgList& args); |
| JsArgList GetChildNodeIds(const JsArgList& args); |
| - JsArgList FindNodesContainingString(const JsArgList& args); |
| FilePath database_path_; |
| @@ -2235,6 +2235,25 @@ JsArgList SyncManager::SyncInternal::GetNodeDetailsById( |
| return GetNodeInfoById(args, GetUserShare(), &BaseNode::GetDetailsAsValue); |
| } |
| +JsArgList SyncManager::SyncInternal::GetAllNodes( |
| + const JsArgList& args) { |
| + ListValue return_args; |
| + ListValue* result = new ListValue(); |
| + return_args.Append(result); |
| + |
| + ReadTransaction trans(FROM_HERE, GetUserShare()); |
| + std::vector<const syncable::EntryKernel*> entry_kernels; |
| + trans.GetDirectory()->GetAllEntryKernels(trans.GetWrappedTrans(), |
| + &entry_kernels); |
| + |
| + for (std::vector<const syncable::EntryKernel*>::const_iterator it = |
| + entry_kernels.begin(); it != entry_kernels.end(); ++it) { |
| + result->Append((*it)->ToValue()); |
|
rlarocque
2012/03/27 01:49:05
This returns the JSON-ified node to the JavaScript
|
| + } |
| + |
| + return JsArgList(&return_args); |
| +} |
| + |
| JsArgList SyncManager::SyncInternal::GetChildNodeIds( |
| const JsArgList& args) { |
| ListValue return_args; |
| @@ -2255,39 +2274,6 @@ JsArgList SyncManager::SyncInternal::GetChildNodeIds( |
| return JsArgList(&return_args); |
| } |
| -JsArgList SyncManager::SyncInternal::FindNodesContainingString( |
| - const JsArgList& args) { |
| - std::string query; |
| - ListValue return_args; |
| - if (!args.Get().GetString(0, &query)) { |
| - return_args.Append(new ListValue()); |
| - return JsArgList(&return_args); |
| - } |
| - |
| - // Convert the query string to lower case to perform case insensitive |
| - // searches. |
| - std::string lowercase_query = query; |
| - StringToLowerASCII(&lowercase_query); |
| - |
| - ListValue* result = new ListValue(); |
| - return_args.Append(result); |
| - |
| - ReadTransaction trans(FROM_HERE, GetUserShare()); |
| - std::vector<const syncable::EntryKernel*> entry_kernels; |
| - trans.GetDirectory()->GetAllEntryKernels(trans.GetWrappedTrans(), |
| - &entry_kernels); |
| - |
| - for (std::vector<const syncable::EntryKernel*>::const_iterator it = |
| - entry_kernels.begin(); it != entry_kernels.end(); ++it) { |
| - if ((*it)->ContainsString(lowercase_query)) { |
| - result->Append(new StringValue(base::Int64ToString( |
| - (*it)->ref(syncable::META_HANDLE)))); |
| - } |
| - } |
| - |
| - return JsArgList(&return_args); |
| -} |
| - |
| void SyncManager::SyncInternal::OnEncryptedTypesChanged( |
| syncable::ModelTypeSet encrypted_types, |
| bool encrypt_everything) { |