| Index: chrome/browser/sync/notifier/communicator/xmpp_connection_generator.h
|
| ===================================================================
|
| --- chrome/browser/sync/notifier/communicator/xmpp_connection_generator.h (revision 46353)
|
| +++ chrome/browser/sync/notifier/communicator/xmpp_connection_generator.h (working copy)
|
| @@ -1,85 +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_XMPP_CONNECTION_GENERATOR_H_
|
| -#define CHROME_BROWSER_SYNC_NOTIFIER_COMMUNICATOR_XMPP_CONNECTION_GENERATOR_H_
|
| -
|
| -#include <vector>
|
| -
|
| -#include "talk/base/scoped_ptr.h"
|
| -#include "talk/base/sigslot.h"
|
| -#include "talk/base/socketaddress.h"
|
| -
|
| -namespace talk_base {
|
| -class AutoDetectProxy;
|
| -struct ProxyInfo;
|
| -class SignalThread;
|
| -class Task;
|
| -}
|
| -
|
| -namespace notifier {
|
| -
|
| -class AsyncDNSLookup;
|
| -class ConnectionOptions;
|
| -class ConnectionSettings;
|
| -class ConnectionSettingsList;
|
| -
|
| -struct ServerInformation {
|
| - talk_base::SocketAddress server;
|
| - bool special_port_magic;
|
| -};
|
| -
|
| -// Resolves dns names and iterates through the various ip address and transport
|
| -// combinations.
|
| -class XmppConnectionGenerator : public sigslot::has_slots<> {
|
| - public:
|
| - // parent is the parent for any tasks needed during this operation.
|
| - // proxy_only indicates if true connections are only attempted using the
|
| - // proxy.
|
| - // server_list is the list of connections to attempt in priority order.
|
| - // server_count is the number of items in the server list.
|
| - XmppConnectionGenerator(talk_base::Task* parent,
|
| - const ConnectionOptions* options,
|
| - bool proxy_only,
|
| - const ServerInformation* server_list,
|
| - int server_count);
|
| - ~XmppConnectionGenerator();
|
| -
|
| - // Only call this once. Create a new XmppConnectionGenerator and delete the
|
| - // current one if the process needs to start again.
|
| - void StartGenerating();
|
| -
|
| - void UseNextConnection();
|
| - void UseCurrentConnection();
|
| -
|
| - const talk_base::ProxyInfo& proxy() const;
|
| -
|
| - sigslot::signal1<const ConnectionSettings&> SignalNewSettings;
|
| -
|
| - // SignalExhaustedSettings(bool successfully_resolved_dns,
|
| - // int first_dns_error);
|
| - sigslot::signal2<bool, int> SignalExhaustedSettings;
|
| -
|
| - private:
|
| - void OnProxyDetect(talk_base::AutoDetectProxy* proxy_detect);
|
| - void OnServerDNSResolved(AsyncDNSLookup* dns_lookup);
|
| - void HandleExhaustedConnections();
|
| -
|
| - talk_base::scoped_ptr<ConnectionSettingsList> settings_list_;
|
| - int settings_index_; // The setting that is currently being used.
|
| - talk_base::scoped_array<ServerInformation> server_list_;
|
| - int server_count_;
|
| - int server_index_; // The server that is current being used.
|
| - bool proxy_only_;
|
| - bool successfully_resolved_dns_;
|
| - int first_dns_error_;
|
| - const ConnectionOptions* options_;
|
| -
|
| - talk_base::Task* parent_;
|
| - DISALLOW_COPY_AND_ASSIGN(XmppConnectionGenerator);
|
| -};
|
| -
|
| -} // namespace notifier
|
| -
|
| -#endif // CHROME_BROWSER_SYNC_NOTIFIER_COMMUNICATOR_XMPP_CONNECTION_GENERATOR_H_
|
|
|