| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "sync/test/fake_server/android/fake_server_helper_android.h" | 5 #include "sync/test/fake_server/android/fake_server_helper_android.h" |
| 6 | 6 |
| 7 #include <jni.h> | 7 #include <jni.h> |
| 8 | 8 |
| 9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| 11 #include "base/logging.h" | 11 #include "base/logging.h" |
| 12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
| 13 #include "jni/FakeServerHelper_jni.h" | 13 #include "jni/FakeServerHelper_jni.h" |
| 14 #include "sync/internal_api/public/base/model_type.h" | 14 #include "sync/internal_api/public/base/model_type.h" |
| 15 #include "sync/internal_api/public/network_resources.h" | 15 #include "sync/internal_api/public/network_resources.h" |
| 16 #include "sync/protocol/sync.pb.h" | 16 #include "sync/protocol/sync.pb.h" |
| 17 #include "sync/test/fake_server/bookmark_entity_builder.h" | |
| 18 #include "sync/test/fake_server/entity_builder_factory.h" | |
| 19 #include "sync/test/fake_server/fake_server.h" | 17 #include "sync/test/fake_server/fake_server.h" |
| 20 #include "sync/test/fake_server/fake_server_network_resources.h" | 18 #include "sync/test/fake_server/fake_server_network_resources.h" |
| 21 #include "sync/test/fake_server/fake_server_verifier.h" | 19 #include "sync/test/fake_server/fake_server_verifier.h" |
| 22 #include "sync/test/fake_server/unique_client_entity.h" | 20 #include "sync/test/fake_server/unique_client_entity.h" |
| 23 #include "testing/gtest/include/gtest/gtest.h" | 21 #include "testing/gtest/include/gtest/gtest.h" |
| 24 #include "url/gurl.h" | |
| 25 | 22 |
| 26 FakeServerHelperAndroid::FakeServerHelperAndroid(JNIEnv* env, jobject obj) { | 23 FakeServerHelperAndroid::FakeServerHelperAndroid(JNIEnv* env, jobject obj) { |
| 27 } | 24 } |
| 28 | 25 |
| 29 FakeServerHelperAndroid::~FakeServerHelperAndroid() { } | 26 FakeServerHelperAndroid::~FakeServerHelperAndroid() { } |
| 30 | 27 |
| 31 static jlong Init(JNIEnv* env, jobject obj) { | 28 static jlong Init(JNIEnv* env, jobject obj) { |
| 32 FakeServerHelperAndroid* fake_server_android = | 29 FakeServerHelperAndroid* fake_server_android = |
| 33 new FakeServerHelperAndroid(env, obj); | 30 new FakeServerHelperAndroid(env, obj); |
| 34 return reinterpret_cast<intptr_t>(fake_server_android); | 31 return reinterpret_cast<intptr_t>(fake_server_android); |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 sync_pb::EntitySpecifics entity_specifics; | 98 sync_pb::EntitySpecifics entity_specifics; |
| 102 if (!entity_specifics.ParseFromString(specifics_string)) | 99 if (!entity_specifics.ParseFromString(specifics_string)) |
| 103 NOTREACHED() << "Could not deserialize EntitySpecifics"; | 100 NOTREACHED() << "Could not deserialize EntitySpecifics"; |
| 104 | 101 |
| 105 fake_server_ptr->InjectEntity( | 102 fake_server_ptr->InjectEntity( |
| 106 fake_server::UniqueClientEntity::CreateForInjection( | 103 fake_server::UniqueClientEntity::CreateForInjection( |
| 107 base::android::ConvertJavaStringToUTF8(env, name), | 104 base::android::ConvertJavaStringToUTF8(env, name), |
| 108 entity_specifics)); | 105 entity_specifics)); |
| 109 } | 106 } |
| 110 | 107 |
| 111 void FakeServerHelperAndroid::InjectBookmarkEntity( | |
| 112 JNIEnv* env, | |
| 113 jobject obj, | |
| 114 jlong fake_server, | |
| 115 jstring title, | |
| 116 jstring url, | |
| 117 jstring parent_id) { | |
| 118 fake_server::FakeServer* fake_server_ptr = | |
| 119 reinterpret_cast<fake_server::FakeServer*>(fake_server); | |
| 120 | |
| 121 std::string url_as_string = base::android::ConvertJavaStringToUTF8(env, url); | |
| 122 GURL gurl = GURL(url_as_string); | |
| 123 if (!gurl.is_valid()) { | |
| 124 NOTREACHED() << "The given string (" << url_as_string | |
| 125 << ") is not a valid URL."; | |
| 126 } | |
| 127 | |
| 128 fake_server::EntityBuilderFactory entity_builder_factory; | |
| 129 fake_server::BookmarkEntityBuilder bookmark_builder = | |
| 130 entity_builder_factory.NewBookmarkEntityBuilder( | |
| 131 base::android::ConvertJavaStringToUTF8(env, title), gurl); | |
| 132 bookmark_builder.SetParentId( | |
| 133 base::android::ConvertJavaStringToUTF8(env, parent_id)); | |
| 134 scoped_ptr<fake_server::FakeServerEntity> bookmark = bookmark_builder.Build(); | |
| 135 fake_server_ptr->InjectEntity(bookmark.Pass()); | |
| 136 } | |
| 137 | |
| 138 base::android::ScopedJavaLocalRef<jstring> | |
| 139 FakeServerHelperAndroid::GetBookmarkBarFolderId( | |
| 140 JNIEnv* env, | |
| 141 jobject obj, | |
| 142 jlong fake_server) { | |
| 143 fake_server::FakeServer* fake_server_ptr = | |
| 144 reinterpret_cast<fake_server::FakeServer*>(fake_server); | |
| 145 return base::android::ConvertUTF8ToJavaString( | |
| 146 env, fake_server_ptr->GetBookmarkBarFolderId()); | |
| 147 } | |
| 148 | |
| 149 // static | 108 // static |
| 150 bool FakeServerHelperAndroid::Register(JNIEnv* env) { | 109 bool FakeServerHelperAndroid::Register(JNIEnv* env) { |
| 151 return RegisterNativesImpl(env); | 110 return RegisterNativesImpl(env); |
| 152 } | 111 } |
| OLD | NEW |