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

Side by Side Diff: jingle/notifier/base/xmpp_connection.h

Issue 5958001: The MediatorThread worker thread needs to have a CertVerifier... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Fix typos in xmpp_connection_unittest.cc Created 10 years 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 | Annotate | Revision Log
Property Changes:
Added: svn:eol-style
+ LF
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 // A class that manages a connection to an XMPP server. 5 // A class that manages a connection to an XMPP server.
6 6
7 #ifndef JINGLE_NOTIFIER_BASE_XMPP_CONNECTION_H_ 7 #ifndef JINGLE_NOTIFIER_BASE_XMPP_CONNECTION_H_
8 #define JINGLE_NOTIFIER_BASE_XMPP_CONNECTION_H_ 8 #define JINGLE_NOTIFIER_BASE_XMPP_CONNECTION_H_
9 #pragma once 9 #pragma once
10 10
11 #include "base/basictypes.h" 11 #include "base/basictypes.h"
12 #include "base/non_thread_safe.h" 12 #include "base/non_thread_safe.h"
13 #include "base/scoped_ptr.h" 13 #include "base/scoped_ptr.h"
14 #include "base/weak_ptr.h" 14 #include "base/weak_ptr.h"
15 #include "talk/base/sigslot.h" 15 #include "talk/base/sigslot.h"
16 #include "talk/xmpp/xmppengine.h" 16 #include "talk/xmpp/xmppengine.h"
17 #include "testing/gtest/include/gtest/gtest_prod.h" 17 #include "testing/gtest/include/gtest/gtest_prod.h"
18 18
19 namespace buzz { 19 namespace buzz {
20 class PreXmppAuth; 20 class PreXmppAuth;
21 class XmlElement; 21 class XmlElement;
22 class XmppClientSettings; 22 class XmppClientSettings;
23 } // namespace 23 } // namespace
24 24
25 namespace net {
26 class CertVerifier;
27 } // namespace
28
25 namespace talk_base { 29 namespace talk_base {
26 class Task; 30 class Task;
27 } // namespace 31 } // namespace
28 32
29 namespace notifier { 33 namespace notifier {
30 34
31 class TaskPump; 35 class TaskPump;
32 class WeakXmppClient; 36 class WeakXmppClient;
33 37
34 class XmppConnection : public sigslot::has_slots<> { 38 class XmppConnection : public sigslot::has_slots<> {
(...skipping 17 matching lines...) Expand all
52 // is non-NULL iff |error| == ERROR_STREAM. |stream_error| is 56 // is non-NULL iff |error| == ERROR_STREAM. |stream_error| is
53 // valid only for the lifetime of this function. 57 // valid only for the lifetime of this function.
54 // 58 //
55 // Ideally, |error| would be set to something that is not 59 // Ideally, |error| would be set to something that is not
56 // ERROR_NONE, but due to inconsistent error-handling this doesn't 60 // ERROR_NONE, but due to inconsistent error-handling this doesn't
57 // always happen. 61 // always happen.
58 virtual void OnError(buzz::XmppEngine::Error error, int subcode, 62 virtual void OnError(buzz::XmppEngine::Error error, int subcode,
59 const buzz::XmlElement* stream_error) = 0; 63 const buzz::XmlElement* stream_error) = 0;
60 }; 64 };
61 65
66 // Does not take ownership of |cert_verifier|, which may not be NULL.
62 // Does not take ownership of |delegate|, which may not be NULL. 67 // Does not take ownership of |delegate|, which may not be NULL.
63 // Takes ownership of |pre_xmpp_auth|, which may be NULL. 68 // Takes ownership of |pre_xmpp_auth|, which may be NULL.
64 // 69 //
65 // TODO(akalin): Avoid the need for |pre_xmpp_auth|. 70 // TODO(akalin): Avoid the need for |pre_xmpp_auth|.
66 XmppConnection(const buzz::XmppClientSettings& xmpp_client_settings, 71 XmppConnection(const buzz::XmppClientSettings& xmpp_client_settings,
72 net::CertVerifier* cert_verifier,
67 Delegate* delegate, buzz::PreXmppAuth* pre_xmpp_auth); 73 Delegate* delegate, buzz::PreXmppAuth* pre_xmpp_auth);
68 74
69 // Invalidates any weak pointers passed to the delegate by 75 // Invalidates any weak pointers passed to the delegate by
70 // OnConnect(), but does not trigger a call to the delegate's 76 // OnConnect(), but does not trigger a call to the delegate's
71 // OnError() function. 77 // OnError() function.
72 ~XmppConnection(); 78 ~XmppConnection();
73 79
74 private: 80 private:
75 void OnStateChange(buzz::XmppEngine::State state); 81 void OnStateChange(buzz::XmppEngine::State state);
76 void OnInputLog(const char* data, int len); 82 void OnInputLog(const char* data, int len);
(...skipping 11 matching lines...) Expand all
88 FRIEND_TEST(XmppConnectionTest, Connect); 94 FRIEND_TEST(XmppConnectionTest, Connect);
89 FRIEND_TEST(XmppConnectionTest, MultipleConnect); 95 FRIEND_TEST(XmppConnectionTest, MultipleConnect);
90 FRIEND_TEST(XmppConnectionTest, ConnectThenError); 96 FRIEND_TEST(XmppConnectionTest, ConnectThenError);
91 97
92 DISALLOW_COPY_AND_ASSIGN(XmppConnection); 98 DISALLOW_COPY_AND_ASSIGN(XmppConnection);
93 }; 99 };
94 100
95 } // namespace notifier 101 } // namespace notifier
96 102
97 #endif // JINGLE_NOTIFIER_BASE_XMPP_CONNECTION_H_ 103 #endif // JINGLE_NOTIFIER_BASE_XMPP_CONNECTION_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698