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 3 // found in the LICENSE file. 4 5 #ifndef SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_DOWNLOADER_IMPL_H_ 6 #define SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_DOWNLOADER_IMPL_H_ 7 8 #include "base/threading/non_thread_safe.h" 9 #include "sync/api/attachments/attachment_downloader.h" 10 11 namespace syncer { 12 13 // An implementation of AttachmentDownloader. 14 class SYNC_EXPORT AttachmentDownloaderImpl : public AttachmentDownloader, 15 public base::NonThreadSafe { 16 public: 17 AttachmentDownloaderImpl(); 18 virtual ~AttachmentDownloaderImpl(); 19 20 // AttachmentDownloader implementation. 21 virtual void DownloadAttachment(const AttachmentId& attachment_id, 22 const DownloadCallback& callback) OVERRIDE; 23 24 private: 25 DISALLOW_COPY_AND_ASSIGN(AttachmentDownloaderImpl); 26 }; 27 28 } // namespace syncer 29 30 #endif // SYNC_INTERNAL_API_PUBLIC_ATTACHMENTS_ATTACHMENT_DOWNLOADER_IMPL_H_ 31