1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef SYNC_INTERNAL_API_PUBLIC_NETWORK_RESOURCES_H_ 6 #define SYNC_INTERNAL_API_PUBLIC_NETWORK_RESOURCES_H_ 7 8 #include "base/memory/scoped_ptr.h" 9 #include "sync/base/sync_export.h" 10 #include "sync/internal_api/public/network_time_update_callback.h" 11 12 namespace net { 13 class URLRequestContextGetter; 14 } // namespace net 15 16 namespace syncer { 17 18 class CancelationSignal; 19 class HttpPostProviderFactory; 20 21 class SYNC_EXPORT NetworkResources { 22 public: 23 virtual ~NetworkResources() {} 24 25 virtual scoped_ptr<HttpPostProviderFactory> GetHttpPostProviderFactory( 26 net::URLRequestContextGetter* baseline_context_getter, 27 const NetworkTimeUpdateCallback& network_time_update_callback, 28 CancelationSignal* cancelation_signal) = 0; 29 }; 30 31 } // namespace syncer 32 33 #endif // SYNC_INTERNAL_API_PUBLIC_NETWORK_RESOURCES_H_ 34