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

Side by Side Diff: remoting/protocol/jingle_messages.h

Issue 1864213002: Convert //remoting to use std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Mac IWYU Created 4 years, 8 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
« no previous file with comments | « remoting/protocol/jingle_info_request.cc ('k') | remoting/protocol/jingle_messages.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 REMOTING_PROTOCOL_JINGLE_MESSAGES_H_ 5 #ifndef REMOTING_PROTOCOL_JINGLE_MESSAGES_H_
6 #define REMOTING_PROTOCOL_JINGLE_MESSAGES_H_ 6 #define REMOTING_PROTOCOL_JINGLE_MESSAGES_H_
7 7
8 #include <list> 8 #include <list>
9 #include <memory>
9 #include <string> 10 #include <string>
10 11
11 #include "base/memory/scoped_ptr.h"
12 #include "third_party/webrtc/libjingle/xmllite/xmlelement.h" 12 #include "third_party/webrtc/libjingle/xmllite/xmlelement.h"
13 #include "third_party/webrtc/p2p/base/candidate.h" 13 #include "third_party/webrtc/p2p/base/candidate.h"
14 14
15 namespace remoting { 15 namespace remoting {
16 namespace protocol { 16 namespace protocol {
17 17
18 class ContentDescription; 18 class ContentDescription;
19 19
20 struct JingleMessage { 20 struct JingleMessage {
21 enum ActionType { 21 enum ActionType {
(...skipping 24 matching lines...) Expand all
46 ~JingleMessage(); 46 ~JingleMessage();
47 47
48 // Caller keeps ownership of |stanza|. 48 // Caller keeps ownership of |stanza|.
49 static bool IsJingleMessage(const buzz::XmlElement* stanza); 49 static bool IsJingleMessage(const buzz::XmlElement* stanza);
50 static std::string GetActionName(ActionType action); 50 static std::string GetActionName(ActionType action);
51 51
52 // Caller keeps ownership of |stanza|. |error| is set to debug error 52 // Caller keeps ownership of |stanza|. |error| is set to debug error
53 // message when parsing fails. 53 // message when parsing fails.
54 bool ParseXml(const buzz::XmlElement* stanza, std::string* error); 54 bool ParseXml(const buzz::XmlElement* stanza, std::string* error);
55 55
56 scoped_ptr<buzz::XmlElement> ToXml() const; 56 std::unique_ptr<buzz::XmlElement> ToXml() const;
57 57
58 std::string from; 58 std::string from;
59 std::string to; 59 std::string to;
60 ActionType action = UNKNOWN_ACTION; 60 ActionType action = UNKNOWN_ACTION;
61 std::string sid; 61 std::string sid;
62 62
63 std::string initiator; 63 std::string initiator;
64 64
65 scoped_ptr<ContentDescription> description; 65 std::unique_ptr<ContentDescription> description;
66 66
67 scoped_ptr<buzz::XmlElement> transport_info; 67 std::unique_ptr<buzz::XmlElement> transport_info;
68 68
69 // Content of session-info messages. 69 // Content of session-info messages.
70 scoped_ptr<buzz::XmlElement> info; 70 std::unique_ptr<buzz::XmlElement> info;
71 71
72 // Value from the <reason> tag if it is present in the 72 // Value from the <reason> tag if it is present in the
73 // message. Useful mainly for session-terminate messages, but Jingle 73 // message. Useful mainly for session-terminate messages, but Jingle
74 // spec allows it in any message. 74 // spec allows it in any message.
75 Reason reason = UNKNOWN_REASON; 75 Reason reason = UNKNOWN_REASON;
76 }; 76 };
77 77
78 struct JingleMessageReply { 78 struct JingleMessageReply {
79 enum ReplyType { 79 enum ReplyType {
80 REPLY_RESULT, 80 REPLY_RESULT,
81 REPLY_ERROR, 81 REPLY_ERROR,
82 }; 82 };
83 enum ErrorType { 83 enum ErrorType {
84 NONE, 84 NONE,
85 BAD_REQUEST, 85 BAD_REQUEST,
86 NOT_IMPLEMENTED, 86 NOT_IMPLEMENTED,
87 INVALID_SID, 87 INVALID_SID,
88 UNEXPECTED_REQUEST, 88 UNEXPECTED_REQUEST,
89 UNSUPPORTED_INFO, 89 UNSUPPORTED_INFO,
90 }; 90 };
91 91
92 JingleMessageReply(); 92 JingleMessageReply();
93 JingleMessageReply(ErrorType error); 93 JingleMessageReply(ErrorType error);
94 JingleMessageReply(ErrorType error, const std::string& text); 94 JingleMessageReply(ErrorType error, const std::string& text);
95 ~JingleMessageReply(); 95 ~JingleMessageReply();
96 96
97 // Formats reply stanza for the specified |request_stanza|. Id and 97 // Formats reply stanza for the specified |request_stanza|. Id and
98 // recepient as well as other information needed to generate a valid 98 // recepient as well as other information needed to generate a valid
99 // reply are taken from |request_stanza|. 99 // reply are taken from |request_stanza|.
100 scoped_ptr<buzz::XmlElement> ToXml( 100 std::unique_ptr<buzz::XmlElement> ToXml(
101 const buzz::XmlElement* request_stanza) const; 101 const buzz::XmlElement* request_stanza) const;
102 102
103 ReplyType type; 103 ReplyType type;
104 ErrorType error_type; 104 ErrorType error_type;
105 std::string text; 105 std::string text;
106 }; 106 };
107 107
108 struct IceTransportInfo { 108 struct IceTransportInfo {
109 IceTransportInfo(); 109 IceTransportInfo();
110 ~IceTransportInfo(); 110 ~IceTransportInfo();
(...skipping 13 matching lines...) Expand all
124 std::string password); 124 std::string password);
125 125
126 std::string channel; 126 std::string channel;
127 std::string ufrag; 127 std::string ufrag;
128 std::string password; 128 std::string password;
129 }; 129 };
130 130
131 // Caller keeps ownership of |stanza|. |error| is set to debug error 131 // Caller keeps ownership of |stanza|. |error| is set to debug error
132 // message when parsing fails. 132 // message when parsing fails.
133 bool ParseXml(const buzz::XmlElement* stanza); 133 bool ParseXml(const buzz::XmlElement* stanza);
134 scoped_ptr<buzz::XmlElement> ToXml() const; 134 std::unique_ptr<buzz::XmlElement> ToXml() const;
135 135
136 std::list<IceCredentials> ice_credentials; 136 std::list<IceCredentials> ice_credentials;
137 std::list<NamedCandidate> candidates; 137 std::list<NamedCandidate> candidates;
138 }; 138 };
139 139
140 } // protocol 140 } // protocol
141 } // remoting 141 } // remoting
142 142
143 #endif // REMOTING_PROTOCOL_JINGLE_MESSAGES_H_ 143 #endif // REMOTING_PROTOCOL_JINGLE_MESSAGES_H_
OLDNEW
« no previous file with comments | « remoting/protocol/jingle_info_request.cc ('k') | remoting/protocol/jingle_messages.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698