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

Unified Diff: chrome/utility/media_router/dial_device_description_parser_impl.cc

Issue 2745653008: [Media Router] Parse device description xml in utility process (Closed)
Patch Set: resolve code review comments from Mark Created 3 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
Index: chrome/utility/media_router/dial_device_description_parser_impl.cc
diff --git a/chrome/utility/media_router/dial_device_description_parser_impl.cc b/chrome/utility/media_router/dial_device_description_parser_impl.cc
new file mode 100644
index 0000000000000000000000000000000000000000..f910bc7315ffc9757074388e2b13025b2cb6ea06
--- /dev/null
+++ b/chrome/utility/media_router/dial_device_description_parser_impl.cc
@@ -0,0 +1,36 @@
+// Copyright 2014 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 "chrome/utility/media_router/dial_device_description_parser_impl.h"
+
+#include "chrome/utility/media_router/dial_device_description_parser.h"
+#include "mojo/public/cpp/bindings/strong_binding.h"
+
+namespace media_router {
+
+DialDeviceDescriptionParserImpl::DialDeviceDescriptionParserImpl() = default;
+DialDeviceDescriptionParserImpl::~DialDeviceDescriptionParserImpl() = default;
+
+// static
+void DialDeviceDescriptionParserImpl::Create(
+ chrome::mojom::DialDeviceDescriptionParserRequest request) {
+ mojo::MakeStrongBinding(base::MakeUnique<DialDeviceDescriptionParserImpl>(),
+ std::move(request));
+}
+
+void DialDeviceDescriptionParserImpl::ParseDialDeviceDescription(
+ const std::string& device_description_xml_data,
+ const ParseDialDeviceDescriptionCallback& callback) {
+ DCHECK(!callback.is_null());
+
+ media_router::DialDeviceDescriptionParser parser;
+ media_router::DialDeviceDescription device_description;
+ bool result = parser.Parse(device_description_xml_data, &device_description);
+ std::string logging_xml =
+ parser.ScrubXmlForLogging(device_description_xml_data);
+
+ callback.Run(result, device_description, logging_xml);
+}
+
+} // namespace media_router

Powered by Google App Engine
This is Rietveld 408576698