scheme_classifier_factory.cc revision 1320f92c476a1ad9d19dba2a48c72b75566198e9
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 3// found in the LICENSE file. 4 5#include "athena/content/public/scheme_classifier_factory.h" 6 7#include "components/metrics/proto/omnibox_input_type.pb.h" 8#include "net/url_request/url_request.h" 9 10namespace athena { 11 12namespace { 13 14// The AutocompleteSchemeClassifier implementation for athena_main. 15class AthenaShellSchemeClassifier : public AutocompleteSchemeClassifier { 16 public: 17 AthenaShellSchemeClassifier() {} 18 virtual ~AthenaShellSchemeClassifier() {} 19 20 // AutocompleteSchemeClassifier: 21 virtual metrics::OmniboxInputType::Type GetInputTypeForScheme( 22 const std::string& scheme) const OVERRIDE { 23 if (net::URLRequest::IsHandledProtocol(scheme)) 24 return metrics::OmniboxInputType::URL; 25 return metrics::OmniboxInputType::INVALID; 26 } 27 28 private: 29 DISALLOW_COPY_AND_ASSIGN(AthenaShellSchemeClassifier); 30}; 31 32} // namespace 33 34scoped_ptr<AutocompleteSchemeClassifier> CreateSchemeClassifier( 35 content::BrowserContext* context) { 36 return scoped_ptr<AutocompleteSchemeClassifier>( 37 new AthenaShellSchemeClassifier()); 38} 39 40} // namespace athena 41