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

Side by Side Diff: extensions/common/alias_provider.h

Issue 2379763003: Extract permission alias info from PermissionsProvider (Closed)
Patch Set: not nesting Alias in AliasProvider Created 4 years, 2 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
OLDNEW
(Empty)
1 // Copyright 2016 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 #ifndef EXTENSIONS_COMMON_ALIAS_PROVIDER_H_
6 #define EXTENSIONS_COMMON_ALIAS_PROVIDER_H_
7
8 #include <string>
9 #include <vector>
10
11 #include "base/macros.h"
12 #include "extensions/common/alias.h"
13
14 namespace extensions {
15
16 // TODO(tbarzic): Consider auto-generating these from a JSON schema file
17 // (similar to what is done for features).
18 class AliasProvider {
19 public:
20 AliasProvider();
21 virtual ~AliasProvider();
22
23 // Returns all valid API aliases provided by |this|.
24 std::vector<Alias> GetValidApiAliases() const;
25 // Returns all valid API aliases provided by |this|.
26 std::vector<Alias> GetValidPermissionAliases() const;
27
28 protected:
29 // Returns API aliases provided by |this|. Returned list may contain invalid
30 // aliases - they will be filtered out before further usage.
31 virtual std::vector<Alias> GetApiAliases() const = 0;
Devlin 2016/09/29 22:03:43 Until we use ApiAliases, I'd like to hold off on a
32 // Returns API aliases provided by |this|. Returned list may contain invalid
33 // aliases - they will be filtered out before further usage.
34 virtual std::vector<Alias> GetPermissionAliases() const = 0;
35
36 private:
37 // Returns |aliases| with invalid aliases filtered out.
38 std::vector<Alias> FilterOutInvalidAliases(
39 const std::vector<Alias>& aliases) const;
40
41 private:
42 DISALLOW_COPY_AND_ASSIGN(AliasProvider);
43 };
44
45 } // namespace extensions
46
47 #endif // EXTENSIONS_COMMON_ALIAS_PROVIDER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698