JCLOUDS-1337: jdbc putBlob portable storage tiers
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/adb4087a Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/adb4087a Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/adb4087a Branch: refs/heads/master Commit: adb4087ab1c37bf8435b293778767e312d89e18b Parents: 32e7a65 Author: Andrew Gaul <[email protected]> Authored: Mon Oct 23 09:12:14 2017 -0700 Committer: Andrew Gaul <[email protected]> Committed: Mon Oct 23 09:13:00 2017 -0700 ---------------------------------------------------------------------- .../jdbc/conversion/BlobEntityToBlob.java | 1 + .../org/jclouds/jdbc/entity/BlobEntity.java | 21 ++++++++++++++++++-- .../org/jclouds/jdbc/service/JdbcService.java | 1 + 3 files changed, 21 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/adb4087a/jdbc/src/main/java/org/jclouds/jdbc/conversion/BlobEntityToBlob.java ---------------------------------------------------------------------- diff --git a/jdbc/src/main/java/org/jclouds/jdbc/conversion/BlobEntityToBlob.java b/jdbc/src/main/java/org/jclouds/jdbc/conversion/BlobEntityToBlob.java index a91a3bc..9d99778 100644 --- a/jdbc/src/main/java/org/jclouds/jdbc/conversion/BlobEntityToBlob.java +++ b/jdbc/src/main/java/org/jclouds/jdbc/conversion/BlobEntityToBlob.java @@ -76,6 +76,7 @@ public class BlobEntityToBlob implements Function<BlobEntity, Blob> { HashCode.fromBytes(payload.getContentMD5())); blob.getMetadata().setETag(blobEntity.getEtag()); blob.getMetadata().getContentMetadata().setExpires(payload.getExpires()); + blob.getMetadata().setTier(blobEntity.getTier()); return blob; } http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/adb4087a/jdbc/src/main/java/org/jclouds/jdbc/entity/BlobEntity.java ---------------------------------------------------------------------- diff --git a/jdbc/src/main/java/org/jclouds/jdbc/entity/BlobEntity.java b/jdbc/src/main/java/org/jclouds/jdbc/entity/BlobEntity.java index 4ec9cfb..9a96a36 100644 --- a/jdbc/src/main/java/org/jclouds/jdbc/entity/BlobEntity.java +++ b/jdbc/src/main/java/org/jclouds/jdbc/entity/BlobEntity.java @@ -17,6 +17,7 @@ package org.jclouds.jdbc.entity; import org.jclouds.blobstore.domain.BlobAccess; +import org.jclouds.blobstore.domain.Tier; import javax.persistence.CascadeType; import javax.persistence.ElementCollection; @@ -54,6 +55,7 @@ public class BlobEntity { private Date creationDate; private Date lastModified; private BlobAccess blobAccess; + private Tier tier; private Long size; private String etag; private boolean directory; @@ -73,13 +75,14 @@ public class BlobEntity { } public BlobEntity(ContainerEntity containerEntity, String key, PayloadEntity payload, Date creationDate, Date lastModified, - BlobAccess blobAccess, Map<String, String> userMetadata, Long size, String etag, boolean directory) { + BlobAccess blobAccess, Tier tier, Map<String, String> userMetadata, Long size, String etag, boolean directory) { this.containerEntity = containerEntity; this.key = key; this.creationDate = creationDate; this.lastModified = lastModified; this.payload = payload; this.blobAccess = blobAccess; + this.tier = tier; this.userMetadata = userMetadata; this.size = size; this.etag = etag; @@ -142,6 +145,14 @@ public class BlobEntity { this.blobAccess = blobAccess; } + public Tier getTier() { + return tier; + } + + public void setTier(Tier tier) { + this.tier = tier; + } + public Map<String, String> getUserMetadata() { return userMetadata; } @@ -175,6 +186,7 @@ public class BlobEntity { private String key; private PayloadEntity payload; private BlobAccess blobAccess; + private Tier tier; private Long size; private String etag; private Map<String, String> userMetadata; @@ -191,6 +203,11 @@ public class BlobEntity { return this; } + public Builder tier(Tier tier) { + this.tier = tier; + return this; + } + public Builder payload(PayloadEntity payload) { this.payload = payload; return this; @@ -217,7 +234,7 @@ public class BlobEntity { } public BlobEntity build() { - return new BlobEntity(containerEntity, key, payload, null, null, blobAccess, userMetadata, size, etag, directory); + return new BlobEntity(containerEntity, key, payload, null, null, blobAccess, tier, userMetadata, size, etag, directory); } } http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/adb4087a/jdbc/src/main/java/org/jclouds/jdbc/service/JdbcService.java ---------------------------------------------------------------------- diff --git a/jdbc/src/main/java/org/jclouds/jdbc/service/JdbcService.java b/jdbc/src/main/java/org/jclouds/jdbc/service/JdbcService.java index fe89d9e..786f080 100644 --- a/jdbc/src/main/java/org/jclouds/jdbc/service/JdbcService.java +++ b/jdbc/src/main/java/org/jclouds/jdbc/service/JdbcService.java @@ -130,6 +130,7 @@ public class JdbcService { blobEntity.setContainerEntity(containerRepository.findContainerByName(containerName)); blobEntity.setKey(key); blobEntity.setBlobAccess(blobAccess); + blobEntity.setTier(blob.getMetadata().getTier()); blobEntity.setCreationDate(creationDate); blobEntity.setLastModified(new Date()); blobEntity.setEtag(base16().lowerCase().encode(actualHashCode.asBytes()));
