Repository: hbase Updated Branches: refs/heads/0.98 d47adb31a -> 9b94c14fa
HBASE-11310:Delete's copy constructor should copy the attributes also (Ram) Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9b94c14f Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9b94c14f Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9b94c14f Branch: refs/heads/0.98 Commit: 9b94c14fa3989a1d170749ab51f14703a1f3bd1e Parents: d47adb3 Author: Ramkrishna <[email protected]> Authored: Wed Jun 11 22:56:45 2014 +0530 Committer: Ramkrishna <[email protected]> Committed: Wed Jun 11 22:56:45 2014 +0530 ---------------------------------------------------------------------- .../org/apache/hadoop/hbase/client/Append.java | 13 +++++++++++++ .../org/apache/hadoop/hbase/client/Delete.java | 3 +++ .../org/apache/hadoop/hbase/client/Get.java | 20 ++++++++++++++++++++ .../apache/hadoop/hbase/client/Increment.java | 13 +++++++++++++ 4 files changed, 49 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/9b94c14f/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java index ae642ba..05bca9f 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java @@ -19,6 +19,7 @@ package org.apache.hadoop.hbase.client; import java.util.ArrayList; import java.util.List; +import java.util.Map; import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; @@ -70,6 +71,18 @@ public class Append extends Mutation { public Append(byte[] row) { this(row, 0, row.length); } + /** + * Copy constructor + * @param a + */ + public Append(Append a) { + this.row = a.getRow(); + this.ts = a.getTimeStamp(); + this.familyMap.putAll(a.getFamilyCellMap()); + for (Map.Entry<String, byte[]> entry : a.getAttributesMap().entrySet()) { + this.setAttribute(entry.getKey(), entry.getValue()); + } + } /** Create a Append operation for the specified row. * <p> http://git-wip-us.apache.org/repos/asf/hbase/blob/9b94c14f/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java index 24ce293..0b6d618 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java @@ -140,6 +140,9 @@ public class Delete extends Mutation implements Comparable<Row> { this.ts = d.getTimeStamp(); this.familyMap.putAll(d.getFamilyCellMap()); this.durability = d.durability; + for (Map.Entry<String, byte[]> entry : d.getAttributesMap().entrySet()) { + this.setAttribute(entry.getKey(), entry.getValue()); + } } /** http://git-wip-us.apache.org/repos/asf/hbase/blob/9b94c14f/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java index 588b94e..81a31a4 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java @@ -90,6 +90,26 @@ public class Get extends Query this.row = row; } + /** + * Copy-constructor + * + * @param get + */ + public Get(Get get) { + this.filter = get.getFilter(); + this.cacheBlocks = get.getCacheBlocks(); + this.maxVersions = get.getMaxVersions(); + this.storeLimit = get.getMaxResultsPerColumnFamily(); + this.storeOffset = get.getRowOffsetPerColumnFamily(); + this.tr = get.getTimeRange(); + this.checkExistenceOnly = get.isCheckExistenceOnly(); + this.closestRowBefore = get.isClosestRowBefore(); + this.familyMap = get.getFamilyMap(); + for (Map.Entry<String, byte[]> attr : get.getAttributesMap().entrySet()) { + setAttribute(attr.getKey(), attr.getValue()); + } + } + public boolean isCheckExistenceOnly() { return checkExistenceOnly; } http://git-wip-us.apache.org/repos/asf/hbase/blob/9b94c14f/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Increment.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Increment.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Increment.java index f604a54..39005d2 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Increment.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Increment.java @@ -72,6 +72,19 @@ public class Increment extends Mutation implements Comparable<Row> { checkRow(row, offset, length); this.row = Bytes.copy(row, offset, length); } + /** + * Copy constructor + * @param i + */ + public Increment(Increment i) { + this.row = i.getRow(); + this.ts = i.getTimeStamp(); + this.tr = i.getTimeRange(); + this.familyMap.putAll(i.getFamilyCellMap()); + for (Map.Entry<String, byte[]> entry : i.getAttributesMap().entrySet()) { + this.setAttribute(entry.getKey(), entry.getValue()); + } + } /** * Add the specified KeyValue to this operation.
