1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "content/browser/android/load_url_params.h" 6 7#include <jni.h> 8 9#include "base/android/jni_string.h" 10#include "content/public/browser/navigation_controller.h" 11#include "content/public/common/url_constants.h" 12#include "jni/LoadUrlParams_jni.h" 13#include "url/gurl.h" 14 15namespace { 16 17using content::NavigationController; 18 19void RegisterConstants(JNIEnv* env) { 20 Java_LoadUrlParams_initializeConstants(env, 21 NavigationController::LOAD_TYPE_DEFAULT, 22 NavigationController::LOAD_TYPE_BROWSER_INITIATED_HTTP_POST, 23 NavigationController::LOAD_TYPE_DATA, 24 NavigationController::UA_OVERRIDE_INHERIT, 25 NavigationController::UA_OVERRIDE_FALSE, 26 NavigationController::UA_OVERRIDE_TRUE); 27} 28 29} // namespace 30 31namespace content { 32 33bool RegisterLoadUrlParams(JNIEnv* env) { 34 if (!RegisterNativesImpl(env)) 35 return false; 36 RegisterConstants(env); 37 return true; 38} 39 40jboolean IsDataScheme(JNIEnv* env, jclass clazz, jstring jurl) { 41 GURL url(base::android::ConvertJavaStringToUTF8(env, jurl)); 42 return url.SchemeIs(url::kDataScheme); 43} 44 45} // namespace content 46