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

Unified Diff: mojo/shell/public/cpp/lib/capabilities.cc

Issue 1776813002: CapabilitySpec (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@42cpi
Patch Set: . Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/shell/public/cpp/capabilities.h ('k') | mojo/shell/public/cpp/lib/shell_connection.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/shell/public/cpp/lib/capabilities.cc
diff --git a/mojo/shell/public/cpp/lib/capabilities.cc b/mojo/shell/public/cpp/lib/capabilities.cc
new file mode 100644
index 0000000000000000000000000000000000000000..f709793c52392ddd6275d70b2b49cd8771f28430
--- /dev/null
+++ b/mojo/shell/public/cpp/lib/capabilities.cc
@@ -0,0 +1,51 @@
+// Copyright 2016 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 "mojo/shell/public/cpp/capabilities.h"
+
+namespace mojo {
+
+// static
+shell::mojom::CapabilitiesPtr
+TypeConverter<shell::mojom::CapabilitiesPtr, caps::Capabilities>::Convert(
+ const caps::Capabilities& input) {
+ shell::mojom::CapabilitiesPtr capabilities(shell::mojom::Capabilities::New());
+ capabilities->provided = mojo::Map<mojo::String, mojo::Array<mojo::String>>::From(input.provided);
+ capabilities->required = mojo::Map<mojo::String, shell::mojom::CapabilitySpecPtr>::From(input.required);
+ return capabilities;
+}
+
+// static
+caps::Capabilities
+TypeConverter<caps::Capabilities, shell::mojom::CapabilitiesPtr>::Convert(
+ const shell::mojom::CapabilitiesPtr& input) {
+ caps::Capabilities capabilities;
+ capabilities.provided =
+ input->provided.To<std::map<caps::Class, caps::Interfaces>>();
+ capabilities.required =
+ input->required.To<std::map<caps::Name, caps::CapabilitySpec>>();
+ return capabilities;
+}
+
+// static
+shell::mojom::CapabilitySpecPtr
+TypeConverter<shell::mojom::CapabilitySpecPtr, caps::CapabilitySpec>::Convert(
+ const caps::CapabilitySpec& input) {
+ shell::mojom::CapabilitySpecPtr spec(shell::mojom::CapabilitySpec::New());
+ spec->classes = mojo::Array<mojo::String>::From(input.classes);
+ spec->interfaces = mojo::Array<mojo::String>::From(input.interfaces);
+ return spec;
+}
+
+// static
+caps::CapabilitySpec
+TypeConverter<caps::CapabilitySpec, shell::mojom::CapabilitySpecPtr>::Convert(
+ const shell::mojom::CapabilitySpecPtr& input) {
+ caps::CapabilitySpec spec;
+ spec.classes = input->classes.To<std::set<std::string>>();
+ spec.interfaces = input->interfaces.To<std::set<std::string>>();
+ return spec;
+}
+
+} // namespace mojo
« no previous file with comments | « mojo/shell/public/cpp/capabilities.h ('k') | mojo/shell/public/cpp/lib/shell_connection.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698