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 const scoped_refptr<net::URLRequestContextGetter>& 27 baseline_context_getter, 28 const NetworkTimeUpdateCallback& network_time_update_callback, 29 CancelationSignal* cancelation_signal) = 0; 30 }; 31 32 } // namespace syncer 33 34 #endif // SYNC_INTERNAL_API_PUBLIC_NETWORK_RESOURCES_H_ 35