ApplicationImpl cleanup, part 1:
[chromium-blink-merge.git] / content / public / browser / presentation_session_message.cc
blob4d7bfd538106ade384574cce5c6cd2ea1b3ce039
1 // Copyright 2015 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.
5 #include "content/public/browser/presentation_session_message.h"
7 namespace content {
9 PresentationSessionMessage::PresentationSessionMessage(
10 const std::string& presentation_url,
11 const std::string& presentation_id,
12 scoped_ptr<std::string> message)
13 : presentation_url(presentation_url),
14 presentation_id(presentation_id),
15 type(PresentationMessageType::TEXT),
16 message(message.Pass()),
17 data(nullptr) {
20 PresentationSessionMessage::PresentationSessionMessage(
21 const std::string& presentation_url,
22 const std::string& presentation_id,
23 PresentationMessageType type,
24 scoped_ptr<std::vector<uint8_t>> data)
25 : presentation_url(presentation_url),
26 presentation_id(presentation_id),
27 type(type),
28 message(nullptr),
29 data(data.Pass()) {
32 // static
33 scoped_ptr<PresentationSessionMessage>
34 PresentationSessionMessage::CreateStringMessage(
35 const std::string& presentation_url,
36 const std::string& presentation_id,
37 scoped_ptr<std::string> message) {
38 return scoped_ptr<PresentationSessionMessage>(new PresentationSessionMessage(
39 presentation_url, presentation_id, message.Pass()));
42 // static
43 scoped_ptr<PresentationSessionMessage>
44 PresentationSessionMessage::CreateArrayBufferMessage(
45 const std::string& presentation_url,
46 const std::string& presentation_id,
47 scoped_ptr<std::vector<uint8_t>> data) {
48 return scoped_ptr<PresentationSessionMessage>(new PresentationSessionMessage(
49 presentation_url, presentation_id, PresentationMessageType::ARRAY_BUFFER,
50 data.Pass()));
53 // static
54 scoped_ptr<PresentationSessionMessage>
55 PresentationSessionMessage::CreateBlobMessage(
56 const std::string& presentation_url,
57 const std::string& presentation_id,
58 scoped_ptr<std::vector<uint8_t>> data) {
59 return scoped_ptr<PresentationSessionMessage>(new PresentationSessionMessage(
60 presentation_url, presentation_id, PresentationMessageType::BLOB,
61 data.Pass()));
64 bool PresentationSessionMessage::is_binary() const {
65 return data != nullptr;
68 PresentationSessionMessage::~PresentationSessionMessage() {
71 } // namespace content