blob: 7321170ddf80a1ebf71dcd8b816f09aa322648dd [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/chromeos/extensions/launcher_search_provider.h"
#include <utility>
#include "base/memory/scoped_ptr.h"
#include "chrome/browser/chromeos/launcher_search_provider/error_reporter.h"
#include "chrome/browser/chromeos/launcher_search_provider/launcher_search_provider_service.h"
#include "chrome/common/extensions/api/launcher_search_provider.h"
#include "content/public/browser/render_frame_host.h"
namespace extensions {
LauncherSearchProviderSetSearchResultsFunction::
~LauncherSearchProviderSetSearchResultsFunction() {
}
bool LauncherSearchProviderSetSearchResultsFunction::RunSync() {
using chromeos::launcher_search_provider::ErrorReporter;
using chromeos::launcher_search_provider::Service;
using extensions::api::launcher_search_provider::SetSearchResults::Params;
const scoped_ptr<Params> params(Params::Create(*args_));
EXTENSION_FUNCTION_VALIDATE(params);
DCHECK(render_frame_host());
scoped_ptr<ErrorReporter> error_reporter(
new ErrorReporter(render_frame_host()));
Service* const service = Service::Get(GetProfile());
service->SetSearchResults(extension(), std::move(error_reporter),
params->query_id, params->results);
return true;
}
} // namespace extensions