summaryrefslogtreecommitdiffstats
path: root/chrome/browser/search_engines/prepopulated_engines_schema.json
blob: b07c4e32179a9a9ead1c5740732d98e8603d09a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// Copyright (c) 2012 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.

// This file is used by json_to_struct.py to generate prepopulated_engine.h/cc.
// Any time you modify this file regenerate the .h/.cc. See
// prepopulated_engines.json for details.

{
  "type_name": "PrepopulatedEngine",
  "headers": [
    "chrome/browser/search_engines/search_engine_type.h"
  ],
  "schema": [
    { "field": "name", "type": "string16" },
    { "field": "keyword", "type": "string16" },
    { "field": "favicon_url", "type": "string" },
    { "field": "search_url", "type": "string" },
    {
      "field": "encoding",
      "type": "string",
      "default": "UTF-8",
      "optional": true
    },
    // If omitted, this engine does not support suggestions.
    { "field": "suggest_url", "type": "string", "optional": true },
    // If omitted, this engine does not support instant.
    { "field": "instant_url", "type": "string", "optional": true },
    // A list of URL patterns that can be used, in addition to |search_url|,
    // to extract search terms from a URL.
    {
      "field": "alternate_urls",
      "type": "array",
      "contents": { "type": "string" },
      "optional": true
    },
    // A parameter that, if present in the query or ref parameters of a
    // search_url or instant_url, causes Chrome to replace the URL with the
    // search term. This can be {google:instantExtendedEnabledKey}.
    {
      "field": "search_terms_replacement_key",
      "type": "string",
      "optional": true
    },
    {
      "field": "type",
      "type": "enum",
      "ctype": "SearchEngineType",
      "default": "SEARCH_ENGINE_OTHER",
      "optional": true
    },
    // Unique id for this prepopulate engine (corresponds to
    // TemplateURL::prepopulate_id). This ID must be greater than zero and must
    // remain the same for a particular site regardless of how the url changes;
    // the ID is used when modifying engine data in subsequent versions, so that
    // we can find the "old" entry to update even when the name or URL changes.
    //
    // This ID must be "unique" within one country's prepopulated data, but two
    // entries can share an ID if they represent the "same" engine (e.g. Yahoo!
    // US vs. Yahoo! UK) and will not appear in the same user-visible data set.
    // This facilitates changes like adding more specific per-country data in
    // the future; in such a case the localized engines will transparently
    // replace the previous, non-localized versions.  For engines where we need
    // two instances to appear for one country (e.g. Bing Search U.S. English
    // and Spanish), we must use two different unique IDs (and different
    // keywords).
    //
    // See prepopulated_engines.json for the list of available IDs.
    { "field": "id", "type": "int" }
  ]
}