OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_SERVICE_IMPL_H_ | 5 #ifndef SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_SERVICE_IMPL_H_ |
6 #define SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_SERVICE_IMPL_H_ | 6 #define SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_SERVICE_IMPL_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 | 9 |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 // successful upload clears the delay. | 46 // successful upload clears the delay. |
47 // | 47 // |
48 // |max_backoff_delay| the maxmium delay between upload attempts when backed | 48 // |max_backoff_delay| the maxmium delay between upload attempts when backed |
49 // off. | 49 // off. |
50 AttachmentServiceImpl(scoped_refptr<AttachmentStore> attachment_store, | 50 AttachmentServiceImpl(scoped_refptr<AttachmentStore> attachment_store, |
51 scoped_ptr<AttachmentUploader> attachment_uploader, | 51 scoped_ptr<AttachmentUploader> attachment_uploader, |
52 scoped_ptr<AttachmentDownloader> attachment_downloader, | 52 scoped_ptr<AttachmentDownloader> attachment_downloader, |
53 Delegate* delegate, | 53 Delegate* delegate, |
54 const base::TimeDelta& initial_backoff_delay, | 54 const base::TimeDelta& initial_backoff_delay, |
55 const base::TimeDelta& max_backoff_delay); | 55 const base::TimeDelta& max_backoff_delay); |
56 virtual ~AttachmentServiceImpl(); | 56 ~AttachmentServiceImpl() override; |
57 | 57 |
58 // Create an AttachmentServiceImpl suitable for use in tests. | 58 // Create an AttachmentServiceImpl suitable for use in tests. |
59 static scoped_ptr<syncer::AttachmentService> CreateForTest(); | 59 static scoped_ptr<syncer::AttachmentService> CreateForTest(); |
60 | 60 |
61 // AttachmentService implementation. | 61 // AttachmentService implementation. |
62 virtual AttachmentStore* GetStore() override; | 62 AttachmentStore* GetStore() override; |
63 virtual void GetOrDownloadAttachments( | 63 void GetOrDownloadAttachments(const AttachmentIdList& attachment_ids, |
64 const AttachmentIdList& attachment_ids, | 64 const GetOrDownloadCallback& callback) override; |
65 const GetOrDownloadCallback& callback) override; | 65 void DropAttachments(const AttachmentIdList& attachment_ids, |
66 virtual void DropAttachments(const AttachmentIdList& attachment_ids, | 66 const DropCallback& callback) override; |
67 const DropCallback& callback) override; | 67 void UploadAttachments(const AttachmentIdSet& attachment_ids) override; |
68 virtual void UploadAttachments( | |
69 const AttachmentIdSet& attachment_ids) override; | |
70 | 68 |
71 // NetworkChangeObserver implementation. | 69 // NetworkChangeObserver implementation. |
72 virtual void OnNetworkChanged( | 70 void OnNetworkChanged( |
73 net::NetworkChangeNotifier::ConnectionType type) override; | 71 net::NetworkChangeNotifier::ConnectionType type) override; |
74 | 72 |
75 // Use |timer| in the underlying TaskQueue. | 73 // Use |timer| in the underlying TaskQueue. |
76 // | 74 // |
77 // Used in tests. See also MockTimer. | 75 // Used in tests. See also MockTimer. |
78 void SetTimerForTest(scoped_ptr<base::Timer> timer); | 76 void SetTimerForTest(scoped_ptr<base::Timer> timer); |
79 | 77 |
80 private: | 78 private: |
81 class GetOrDownloadState; | 79 class GetOrDownloadState; |
82 | 80 |
(...skipping 30 matching lines...) Expand all Loading... |
113 | 111 |
114 // Must be last data member. | 112 // Must be last data member. |
115 base::WeakPtrFactory<AttachmentServiceImpl> weak_ptr_factory_; | 113 base::WeakPtrFactory<AttachmentServiceImpl> weak_ptr_factory_; |
116 | 114 |
117 DISALLOW_COPY_AND_ASSIGN(AttachmentServiceImpl); | 115 DISALLOW_COPY_AND_ASSIGN(AttachmentServiceImpl); |
118 }; | 116 }; |
119 | 117 |
120 } // namespace syncer | 118 } // namespace syncer |
121 | 119 |
122 #endif // SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_SERVICE_IMPL_H_ | 120 #endif // SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_SERVICE_IMPL_H_ |
OLD | NEW |