Index: webrtc/libjingle/xmpp/presencestatus.cc |
diff --git a/webrtc/libjingle/xmpp/presencestatus.cc b/webrtc/libjingle/xmpp/presencestatus.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..da6c64f1a25f593c7174dd0dcd0cf2eae6f330ca |
--- /dev/null |
+++ b/webrtc/libjingle/xmpp/presencestatus.cc |
@@ -0,0 +1,45 @@ |
+/* |
+ * Copyright 2004 The WebRTC Project Authors. All rights reserved. |
+ * |
+ * Use of this source code is governed by a BSD-style license |
+ * that can be found in the LICENSE file in the root of the source |
+ * tree. An additional intellectual property rights grant can be found |
+ * in the file PATENTS. All contributing project authors may |
+ * be found in the AUTHORS file in the root of the source tree. |
+ */ |
+ |
+#include "webrtc/libjingle/xmpp/presencestatus.h" |
+ |
+namespace buzz { |
+PresenceStatus::PresenceStatus() |
+ : pri_(0), |
+ show_(SHOW_NONE), |
+ available_(false), |
+ e_code_(0), |
+ feedback_probation_(false), |
+ know_capabilities_(false), |
+ voice_capability_(false), |
+ pmuc_capability_(false), |
+ video_capability_(false), |
+ camera_capability_(false) { |
+} |
+ |
+void PresenceStatus::UpdateWith(const PresenceStatus& new_value) { |
+ if (!new_value.know_capabilities()) { |
+ bool k = know_capabilities(); |
+ bool p = voice_capability(); |
+ std::string node = caps_node(); |
+ std::string v = version(); |
+ |
+ *this = new_value; |
+ |
+ set_know_capabilities(k); |
+ set_caps_node(node); |
+ set_voice_capability(p); |
+ set_version(v); |
+ } else { |
+ *this = new_value; |
+ } |
+} |
+ |
+} // namespace buzz |