Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1088)

Side by Side Diff: chrome/browser/webdata/web_intents_table.h

Issue 12225076: Delete most web intents code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/webdata/web_database.cc ('k') | chrome/browser/webdata/web_intents_table.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_WEBDATA_WEB_INTENTS_TABLE_H_ 5 #ifndef CHROME_BROWSER_WEBDATA_WEB_INTENTS_TABLE_H_
6 #define CHROME_BROWSER_WEBDATA_WEB_INTENTS_TABLE_H_ 6 #define CHROME_BROWSER_WEBDATA_WEB_INTENTS_TABLE_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/compiler_specific.h" 11 #include "base/compiler_specific.h"
12 #include "base/string16.h" 12 #include "base/string16.h"
13 #include "chrome/browser/webdata/web_database_table.h" 13 #include "chrome/browser/webdata/web_database_table.h"
14 #include "webkit/glue/web_intent_service_data.h"
15 14
16 namespace sql { 15 namespace sql {
17 class Connection; 16 class Connection;
18 class MetaTable; 17 class MetaTable;
19 } 18 }
20 19
21 struct DefaultWebIntentService; 20 struct DefaultWebIntentService;
22 21
22 // TODO(thakis): Delete this class once there's a migration that drops the
23 // table backing it.
24
23 // This class manages the WebIntents table within the SQLite database passed 25 // This class manages the WebIntents table within the SQLite database passed
24 // to the constructor. It expects the following schema: 26 // to the constructor. It expects the following schema:
25 // 27 //
26 // web_intents 28 // web_intents
27 // service_url URL for service invocation. 29 // service_url URL for service invocation.
28 // action Name of action provided by the service. 30 // action Name of action provided by the service.
29 // type MIME type of data accepted by the service. 31 // type MIME type of data accepted by the service.
30 // title Title for the service page 32 // title Title for the service page
31 // disposition Either 'window' or 'inline' disposition. 33 // disposition Either 'window' or 'inline' disposition.
32 // 34 //
(...skipping 18 matching lines...) Expand all
51 WebIntentsTable(sql::Connection* db, sql::MetaTable* meta_table); 53 WebIntentsTable(sql::Connection* db, sql::MetaTable* meta_table);
52 virtual ~WebIntentsTable(); 54 virtual ~WebIntentsTable();
53 55
54 // WebDatabaseTable implementation. 56 // WebDatabaseTable implementation.
55 virtual bool Init() OVERRIDE; 57 virtual bool Init() OVERRIDE;
56 virtual bool IsSyncable() OVERRIDE; 58 virtual bool IsSyncable() OVERRIDE;
57 59
58 // Adds "scheme" column to the web_intents and web_intents_defaults tables. 60 // Adds "scheme" column to the web_intents and web_intents_defaults tables.
59 bool MigrateToVersion46AddSchemeColumn(); 61 bool MigrateToVersion46AddSchemeColumn();
60 62
61 #if (ENABLE_WEB_INTENTS)
62 // Adds a web intent service to the WebIntents table.
63 // If |service| already exists, replaces it.
64 bool SetWebIntentService(const webkit_glue::WebIntentServiceData& service);
65
66 // Retrieve all |services| from WebIntents table that match |action|.
67 bool GetWebIntentServicesForAction(
68 const string16& action,
69 std::vector<webkit_glue::WebIntentServiceData>* services);
70
71 // Retrieve all |services| from WebIntents table that match |scheme|.
72 bool GetWebIntentServicesForScheme(
73 const string16& scheme,
74 std::vector<webkit_glue::WebIntentServiceData>* services);
75
76 // Retrieves all |services| from WebIntents table that match |service_url|.
77 bool GetWebIntentServicesForURL(
78 const string16& service_url,
79 std::vector<webkit_glue::WebIntentServiceData>* services);
80
81 // Retrieve all |services| from WebIntents table.
82 bool GetAllWebIntentServices(
83 std::vector<webkit_glue::WebIntentServiceData>* services);
84
85 // Removes |service| from WebIntents table - must match all parameters
86 // exactly.
87 bool RemoveWebIntentService(const webkit_glue::WebIntentServiceData& service);
88
89 // Get the default service to be used for the given intent invocation.
90 // If any overlapping defaults are found, they're placed in
91 // |default_services|, otherwise, it is untouched.
92 // Returns true if the method runs successfully, false on database error.
93 bool GetDefaultServices(
94 const string16& action,
95 std::vector<DefaultWebIntentService>* default_services);
96
97 // Get a list of all installed default services.
98 bool GetAllDefaultServices(
99 std::vector<DefaultWebIntentService>* default_services);
100
101 // Set a default service to be used on given intent invocations.
102 bool SetDefaultService(const DefaultWebIntentService& default_service);
103
104 // Removes a default |service| from table - must match the action, type,
105 // and url_pattern parameters exactly.
106 bool RemoveDefaultService(const DefaultWebIntentService& default_service);
107
108 // Removes all default services associated with |service_url|.
109 bool RemoveServiceDefaults(const GURL& service_url);
110 #endif
111
112 private: 63 private:
113 DISALLOW_COPY_AND_ASSIGN(WebIntentsTable); 64 DISALLOW_COPY_AND_ASSIGN(WebIntentsTable);
114 }; 65 };
115 66
116 #endif // CHROME_BROWSER_WEBDATA_WEB_INTENTS_TABLE_H_ 67 #endif // CHROME_BROWSER_WEBDATA_WEB_INTENTS_TABLE_H_
OLDNEW
« no previous file with comments | « chrome/browser/webdata/web_database.cc ('k') | chrome/browser/webdata/web_intents_table.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698