+WebViewInternalLoadDataWithBaseUrlFunction::
+ WebViewInternalLoadDataWithBaseUrlFunction() {
+}
+
+WebViewInternalLoadDataWithBaseUrlFunction::
+ ~WebViewInternalLoadDataWithBaseUrlFunction() {
+}
+
+bool WebViewInternalLoadDataWithBaseUrlFunction::RunAsyncSafe(
+ WebViewGuest* guest) {
+ scoped_ptr<webview::LoadDataWithBaseUrl::Params> params(
+ webview::LoadDataWithBaseUrl::Params::Create(*args_));
+ EXTENSION_FUNCTION_VALIDATE(params.get());
+
+ // If a virtual URL was provided, use it. Otherwise, the user will be shown
+ // the data URL.
+ std::string virtual_url =
+ params->virtual_url ? *params->virtual_url : params->data_url;
+
+ bool successful = guest->LoadDataWithBaseURL(
+ params->data_url, params->base_url, virtual_url, &error_);
+ SendResponse(successful);
+ return successful;
+}
+