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

Unified Diff: chrome/browser/sync/notifier/communicator/mailbox.h

Issue 1956001: Moved XMPP notifier library from chrome/browser/sync to chrome/common.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync/notifier/communicator/mailbox.h
===================================================================
--- chrome/browser/sync/notifier/communicator/mailbox.h (revision 46353)
+++ chrome/browser/sync/notifier/communicator/mailbox.h (working copy)
@@ -1,166 +0,0 @@
-// Copyright (c) 2009 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.
-
-#ifndef CHROME_BROWSER_SYNC_NOTIFIER_COMMUNICATOR_MAILBOX_H_
-#define CHROME_BROWSER_SYNC_NOTIFIER_COMMUNICATOR_MAILBOX_H_
-
-#include <set>
-#include <string>
-#include <vector>
-
-#include "talk/base/basictypes.h"
-#include "talk/base/linked_ptr.h"
-
-namespace buzz {
-class XmlElement;
-}
-
-namespace notifier {
-// -----------------------------------------------------------------------------
-class MailAddress {
- public:
- MailAddress(const std::string& name, const std::string& address)
- : name_(name),
- address_(address) {
- }
- const std::string& name() const { return name_; }
- const std::string& address() const { return address_; }
- std::string safe_name() const; // Will return *something*.
- private:
- std::string name_;
- std::string address_;
-};
-
-// -----------------------------------------------------------------------------
-class MailSender : public MailAddress {
- public:
- MailSender(const std::string& name, const std::string& address, bool unread,
- bool originator)
- : MailAddress(name, address),
- unread_(unread),
- originator_(originator) {
- }
-
- MailSender(const MailSender& r)
- : MailAddress(r.name(), r.address()) {
- unread_ = r.unread_;
- originator_ = r.originator_;
- }
-
- bool unread() const { return unread_; }
- bool originator() const { return originator_; }
-
- private:
- bool unread_;
- bool originator_;
-};
-
-typedef std::vector<MailSender> MailSenderList;
-
-// -----------------------------------------------------------------------------
-// MessageThread: everything there is to know about a mail thread.
-class MessageThread {
- public:
- MessageThread(const MessageThread& r) {
- labels_ = NULL;
- senders_ = NULL;
- *this = r;
- }
-
- ~MessageThread();
-
- // Try to parse the XML to create a MessageThreadInfo. If NULL is returned
- // then we either ran out of memory or there was an error in parsing the XML.
- static MessageThread* CreateFromXML(const buzz::XmlElement* src);
-
- MessageThread& operator=(const MessageThread& r);
-
- // SameThreadAs : name is self evident.
- bool SameThreadAs(const MessageThread& r) {
- AssertValid();
- r.AssertValid();
- return (thread_id_ == r.thread_id_);
- }
-
- // SameAs : true if thread has same id and messages.
- // Assumes that messages don't disappear from threads.
- bool SameAs(const MessageThread& r) {
- AssertValid();
- r.AssertValid();
- return SameThreadAs(r) &&
- message_count_ == r.message_count_;
- }
-
- typedef std::set<std::string> StringSet;
-
- int64 thread_id() const { return thread_id_; }
- const StringSet* labels() const { return labels_; }
- int64 date64() const { return date64_; }
- MailSenderList* senders() const { return senders_; }
- int personal_level() const { return personal_level_; }
- int message_count() const { return message_count_; }
- const std::string& subject() const { return subject_; }
- const std::string& snippet() const { return snippet_; }
- bool starred() const;
- bool unread() const;
-
-#if defined(DEBUG)
- void AssertValid() const;
-#else
- inline void AssertValid() const {}
-#endif
-
- private:
- void Clear();
-
- private:
- MessageThread() : senders_(NULL), labels_(NULL) {}
- bool InitFromXml(const buzz::XmlElement* src);
-
- int64 thread_id_;
- int64 date64_;
- int message_count_;
- int personal_level_;
- std::string subject_;
- std::string snippet_;
- MailSenderList* senders_;
- StringSet* labels_;
-};
-
-typedef talk_base::linked_ptr<MessageThread> MessageThreadPointer;
-typedef std::vector<MessageThreadPointer> MessageThreadVector;
-
-// -----------------------------------------------------------------------------
-class MailBox {
- public:
- static MailBox* CreateFromXML(const buzz::XmlElement* src);
-
- const MessageThreadVector& threads() const { return threads_; }
- int mailbox_size() const { return mailbox_size_; }
- int first_index() const { return first_index_; }
- bool estimate() const { return estimate_; }
- int64 result_time() const { return result_time_; }
- int64 highest_thread_id() const { return highest_thread_id_; }
-
- private:
- MailBox() {}
- bool InitFromXml(const buzz::XmlElement* src);
-
- MessageThreadVector threads_;
-
- int mailbox_size_;
- int first_index_;
- bool estimate_;
- int64 result_time_;
- int64 highest_thread_id_;
-};
-
-std::string GetSenderHtml(const MailSenderList& sender_list,
- int message_count,
- const std::string& me_address,
- int space);
-
-} // namespace notifier
-
-#endif // CHROME_BROWSER_SYNC_NOTIFIER_COMMUNICATOR_MAILBOX_H_
« no previous file with comments | « chrome/browser/sync/notifier/communicator/login_settings.cc ('k') | chrome/browser/sync/notifier/communicator/mailbox.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698