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 COMPONENTS_SYNC_API_ATTACHMENTS_ATTACHMENT_METADATA_H_ | 5 #ifndef COMPONENTS_SYNC_API_ATTACHMENTS_ATTACHMENT_METADATA_H_ |
6 #define COMPONENTS_SYNC_API_ATTACHMENTS_ATTACHMENT_METADATA_H_ | 6 #define COMPONENTS_SYNC_API_ATTACHMENTS_ATTACHMENT_METADATA_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "components/sync/api/attachments/attachment_id.h" | 12 #include "components/sync/api/attachments/attachment_id.h" |
13 #include "components/sync/base/sync_export.h" | |
14 | 13 |
15 namespace syncer { | 14 namespace syncer { |
16 | 15 |
17 // This class represents immutable Attachment metadata. | 16 // This class represents immutable Attachment metadata. |
18 // | 17 // |
19 // It is OK to copy and return AttachmentMetadata by value. | 18 // It is OK to copy and return AttachmentMetadata by value. |
20 class SYNC_EXPORT AttachmentMetadata { | 19 class AttachmentMetadata { |
21 public: | 20 public: |
22 AttachmentMetadata(const AttachmentId& id, size_t size); | 21 AttachmentMetadata(const AttachmentId& id, size_t size); |
23 ~AttachmentMetadata(); | 22 ~AttachmentMetadata(); |
24 | 23 |
25 // Default copy and assignment are welcome. | 24 // Default copy and assignment are welcome. |
26 | 25 |
27 // Returns this attachment's id. | 26 // Returns this attachment's id. |
28 const AttachmentId& GetId() const; | 27 const AttachmentId& GetId() const; |
29 | 28 |
30 // Returns this attachment's size in bytes. | 29 // Returns this attachment's size in bytes. |
31 size_t GetSize() const; | 30 size_t GetSize() const; |
32 | 31 |
33 private: | 32 private: |
34 // TODO(maniscalco): Reconcile AttachmentMetadata and | 33 // TODO(maniscalco): Reconcile AttachmentMetadata and |
35 // AttachmentId. AttachmentId knows the size of the attachment so | 34 // AttachmentId. AttachmentId knows the size of the attachment so |
36 // AttachmentMetadata may not be necessary (crbug/465375). | 35 // AttachmentMetadata may not be necessary (crbug/465375). |
37 AttachmentId id_; | 36 AttachmentId id_; |
38 size_t size_; | 37 size_t size_; |
39 }; | 38 }; |
40 | 39 |
41 typedef std::vector<syncer::AttachmentMetadata> AttachmentMetadataList; | 40 typedef std::vector<syncer::AttachmentMetadata> AttachmentMetadataList; |
42 | 41 |
43 } // namespace syncer | 42 } // namespace syncer |
44 | 43 |
45 #endif // COMPONENTS_SYNC_API_ATTACHMENTS_ATTACHMENT_METADATA_H_ | 44 #endif // COMPONENTS_SYNC_API_ATTACHMENTS_ATTACHMENT_METADATA_H_ |
OLD | NEW |