You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@eagle.apache.org by ja...@apache.org on 2018/02/07 07:07:13 UTC
[06/10] eagle git commit: [EAGLE-1081] Checkstyle fixes for
eagle-entity-base module
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/RowKeyLogReader.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/RowKeyLogReader.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/RowKeyLogReader.java
index 1c16dc8..1f29121 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/RowKeyLogReader.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/RowKeyLogReader.java
@@ -31,12 +31,12 @@ import org.apache.hadoop.hbase.client.Result;
import org.apache.eagle.log.entity.meta.EntityDefinition;
public class RowKeyLogReader extends IndexLogReader {
- private final EntityDefinition ed;
- private final List<byte[]> rowkeys;
+ private final EntityDefinition ed;
+ private final List<byte[]> rowkeys;
private final byte[][] qualifiers;
private HTableInterface tbl;
- private boolean isOpen = false;
- private Result[] entityResult;
+ private boolean isOpen = false;
+ private Result[] entityResult;
private int getIndex = -1;
public RowKeyLogReader(EntityDefinition ed, byte[] rowkey) {
@@ -46,38 +46,39 @@ public class RowKeyLogReader extends IndexLogReader {
this.qualifiers = null;
}
- public RowKeyLogReader(EntityDefinition ed, byte[] rowkey,byte[][] qualifiers) {
- this.ed = ed;
- this.rowkeys = new ArrayList<>();
+ public RowKeyLogReader(EntityDefinition ed, byte[] rowkey, byte[][] qualifiers) {
+ this.ed = ed;
+ this.rowkeys = new ArrayList<>();
this.rowkeys.add(rowkey);
this.qualifiers = qualifiers;
- }
+ }
- public RowKeyLogReader(EntityDefinition ed, List<byte[]> rowkeys,byte[][] qualifiers) {
- this.ed = ed;
- this.rowkeys = rowkeys;
+ public RowKeyLogReader(EntityDefinition ed, List<byte[]> rowkeys, byte[][] qualifiers) {
+ this.ed = ed;
+ this.rowkeys = rowkeys;
this.qualifiers = qualifiers;
- }
+ }
- @Override
- public void open() throws IOException {
- if (isOpen)
- return; // silently return
- try {
- tbl = EagleConfigFactory.load().getHTable(ed.getTable());
- } catch (RuntimeException ex) {
- throw new IOException(ex);
- }
- final byte[] family = ed.getColumnFamily().getBytes();
+ @Override
+ public void open() throws IOException {
+ if (isOpen) {
+ return; // silently return
+ }
+ try {
+ tbl = EagleConfigFactory.load().getHTable(ed.getTable());
+ } catch (RuntimeException ex) {
+ throw new IOException(ex);
+ }
+ final byte[] family = ed.getColumnFamily().getBytes();
List<Get> gets = new ArrayList<>(this.rowkeys.size());
- for(byte[] rowkey:rowkeys) {
+ for (byte[] rowkey : rowkeys) {
Get get = new Get(rowkey);
get.addFamily(family);
- if(qualifiers != null) {
- for(byte[] qualifier: qualifiers){
- get.addColumn(family,qualifier);
+ if (qualifiers != null) {
+ for (byte[] qualifier : qualifiers) {
+ get.addColumn(family, qualifier);
}
}
@@ -85,23 +86,23 @@ public class RowKeyLogReader extends IndexLogReader {
}
entityResult = tbl.get(gets);
- isOpen = true;
- }
+ isOpen = true;
+ }
- @Override
- public void close() throws IOException {
- if(tbl != null){
- new HTableFactory().releaseHTableInterface(tbl);
- }
- }
+ @Override
+ public void close() throws IOException {
+ if (tbl != null) {
+ new HTableFactory().releaseHTableInterface(tbl);
+ }
+ }
- @Override
- public InternalLog read() throws IOException {
- if(entityResult == null || entityResult.length == 0 || this.getIndex >= entityResult.length - 1){
+ @Override
+ public InternalLog read() throws IOException {
+ if (entityResult == null || entityResult.length == 0 || this.getIndex >= entityResult.length - 1) {
return null;
}
- getIndex ++;
- InternalLog t = HBaseInternalLogHelper.parse(ed, entityResult[getIndex], this.qualifiers);
- return t;
- }
-}
\ No newline at end of file
+ getIndex++;
+ InternalLog t = HBaseInternalLogHelper.parse(ed, entityResult[getIndex], this.qualifiers);
+ return t;
+ }
+}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexLogReader.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexLogReader.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexLogReader.java
index 8ff3448..855beaf 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexLogReader.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexLogReader.java
@@ -33,32 +33,34 @@ import org.apache.hadoop.hbase.filter.Filter;
public class UniqueIndexLogReader extends IndexLogReader {
- private final IndexDefinition indexDef;
- private final List<byte[]> indexRowkeys;
- private final byte[][] qualifiers;
- private final Filter filter;
- private HTableInterface tbl;
- private boolean isOpen = false;
- private Result[] entityResults;
- private int index = -1;
+ private final IndexDefinition indexDef;
+ private final List<byte[]> indexRowkeys;
+ private final byte[][] qualifiers;
+ private final Filter filter;
+ private HTableInterface tbl;
+ private boolean isOpen = false;
+ private Result[] entityResults;
+ private int index = -1;
- public UniqueIndexLogReader(IndexDefinition indexDef, List<byte[]> indexRowkeys, byte[][] qualifiers, Filter filter) {
- this.indexDef = indexDef;
- this.indexRowkeys = indexRowkeys;
- this.qualifiers = qualifiers;
- this.filter = filter;
- }
+ public UniqueIndexLogReader(IndexDefinition indexDef, List<byte[]> indexRowkeys, byte[][] qualifiers,
+ Filter filter) {
+ this.indexDef = indexDef;
+ this.indexRowkeys = indexRowkeys;
+ this.qualifiers = qualifiers;
+ this.filter = filter;
+ }
- @Override
- public void open() throws IOException {
- if (isOpen)
- return; // silently return
- try {
- tbl = EagleConfigFactory.load().getHTable(indexDef.getEntityDefinition().getTable());
- } catch (RuntimeException ex) {
- throw new IOException(ex);
- }
- final byte[] family = indexDef.getEntityDefinition().getColumnFamily().getBytes();
+ @Override
+ public void open() throws IOException {
+ if (isOpen) {
+ return; // silently return
+ }
+ try {
+ tbl = EagleConfigFactory.load().getHTable(indexDef.getEntityDefinition().getTable());
+ } catch (RuntimeException ex) {
+ throw new IOException(ex);
+ }
+ final byte[] family = indexDef.getEntityDefinition().getColumnFamily().getBytes();
final List<Get> indexGets = new ArrayList<>();
for (byte[] rowkey : indexRowkeys) {
Get get = new Get(rowkey);
@@ -69,56 +71,56 @@ public class UniqueIndexLogReader extends IndexLogReader {
final Result[] indexResults = tbl.get(indexGets);
indexGets.clear();
for (Result indexResult : indexResults) {
- final NavigableMap<byte[], byte[]> map = indexResult.getFamilyMap(family);
- if (map == null) {
- continue;
- }
- for (byte[] entityRowkey : map.keySet()) {
+ final NavigableMap<byte[], byte[]> map = indexResult.getFamilyMap(family);
+ if (map == null) {
+ continue;
+ }
+ for (byte[] entityRowkey : map.keySet()) {
Get get = new Get(entityRowkey);
if (filter != null) {
- get.setFilter(filter);
+ get.setFilter(filter);
}
- if(qualifiers == null) {
- // filter all qualifiers if output qualifiers are null
- get.addFamily(family);
- }else {
- for (int i = 0; i < qualifiers.length; ++i) {
- // Return the specified qualifiers
- get.addColumn(family, qualifiers[i]);
- }
- }
- workaroundHBASE2198(get, filter,qualifiers);
- indexGets.add(get);
- }
+ if (qualifiers == null) {
+ // filter all qualifiers if output qualifiers are null
+ get.addFamily(family);
+ } else {
+ for (int i = 0; i < qualifiers.length; ++i) {
+ // Return the specified qualifiers
+ get.addColumn(family, qualifiers[i]);
+ }
+ }
+ workaroundHBASE2198(get, filter, qualifiers);
+ indexGets.add(get);
+ }
}
entityResults = tbl.get(indexGets);
- isOpen = true;
- }
+ isOpen = true;
+ }
- @Override
- public void close() throws IOException {
- if(tbl != null){
- new HTableFactory().releaseHTableInterface(tbl);
- }
- }
+ @Override
+ public void close() throws IOException {
+ if (tbl != null) {
+ new HTableFactory().releaseHTableInterface(tbl);
+ }
+ }
- @Override
- public InternalLog read() throws IOException {
- if (entityResults == null) {
- throw new IllegalArgumentException("entityResults haven't been initialized before reading");
- }
- InternalLog t = null;
- while (entityResults.length > ++index) {
- Result r = entityResults[index];
- if (r != null) {
- if (r.getRow() == null) {
- continue;
- }
- t = HBaseInternalLogHelper.parse(indexDef.getEntityDefinition(), r, qualifiers);
- break;
- }
- }
- return t;
- }
+ @Override
+ public InternalLog read() throws IOException {
+ if (entityResults == null) {
+ throw new IllegalArgumentException("entityResults haven't been initialized before reading");
+ }
+ InternalLog t = null;
+ while (entityResults.length > ++index) {
+ Result r = entityResults[index];
+ if (r != null) {
+ if (r.getRow() == null) {
+ continue;
+ }
+ t = HBaseInternalLogHelper.parse(indexDef.getEntityDefinition(), r, qualifiers);
+ break;
+ }
+ }
+ return t;
+ }
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexStreamReader.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexStreamReader.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexStreamReader.java
index 0391d57..cf94c11 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexStreamReader.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/index/UniqueIndexStreamReader.java
@@ -27,26 +27,29 @@ import java.util.ArrayList;
import java.util.List;
public class UniqueIndexStreamReader extends IndexStreamReader {
- public UniqueIndexStreamReader(IndexDefinition indexDef, SearchCondition condition) {
- super(indexDef, condition, new ArrayList<byte[]>());
- final IndexType type = indexDef.canGoThroughIndex(condition.getQueryExpression(), indexRowkeys);
- if (!IndexType.UNIQUE_INDEX.equals(type)) {
- throw new IllegalArgumentException("This query can't go through index: " + condition.getQueryExpression());
- }
- }
+ public UniqueIndexStreamReader(IndexDefinition indexDef, SearchCondition condition) {
+ super(indexDef, condition, new ArrayList<byte[]>());
+ final IndexType type = indexDef.canGoThroughIndex(condition.getQueryExpression(), indexRowkeys);
+ if (!IndexType.UNIQUE_INDEX.equals(type)) {
+ throw new IllegalArgumentException("This query can't go through index: "
+ + condition.getQueryExpression());
+ }
+ }
- public UniqueIndexStreamReader(IndexDefinition indexDef, SearchCondition condition, List<byte[]> indexRowkeys) {
- super(indexDef, condition, indexRowkeys);
- }
+ public UniqueIndexStreamReader(IndexDefinition indexDef, SearchCondition condition,
+ List<byte[]> indexRowkeys) {
+ super(indexDef, condition, indexRowkeys);
+ }
- @Override
- protected LogReader createIndexReader() {
- final EntityDefinition entityDef = indexDef.getEntityDefinition();
-// final
- byte[][] outputQualifiers = null;
- if(!condition.isOutputAll()) {
- outputQualifiers = HBaseInternalLogHelper.getOutputQualifiers(entityDef, condition.getOutputFields());
- }
- return new UniqueIndexLogReader(indexDef, indexRowkeys, outputQualifiers, condition.getFilter());
- }
+ @Override
+ protected LogReader createIndexReader() {
+ final EntityDefinition entityDef = indexDef.getEntityDefinition();
+ // final
+ byte[][] outputQualifiers = null;
+ if (!condition.isOutputAll()) {
+ outputQualifiers = HBaseInternalLogHelper.getOutputQualifiers(entityDef,
+ condition.getOutputFields());
+ }
+ return new UniqueIndexLogReader(indexDef, indexRowkeys, outputQualifiers, condition.getFilter());
+ }
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/BooleanSerDeser.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/BooleanSerDeser.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/BooleanSerDeser.java
index cf40e31..2e0882b 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/BooleanSerDeser.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/BooleanSerDeser.java
@@ -21,34 +21,35 @@ package org.apache.eagle.log.entity.meta;
*/
public class BooleanSerDeser implements EntitySerDeser<Boolean> {
- public BooleanSerDeser(){}
+ public BooleanSerDeser() {
+ }
- @Override
- public Boolean deserialize(byte[] bytes){
- if(bytes != null && bytes.length > 0){
- if(bytes[0] == 0){
- return false;
- }else if(bytes[0] == 1){
- return true;
- }
- }
- return null;
- }
+ @Override
+ public Boolean deserialize(byte[] bytes) {
+ if (bytes != null && bytes.length > 0) {
+ if (bytes[0] == 0) {
+ return false;
+ } else if (bytes[0] == 1) {
+ return true;
+ }
+ }
+ return null;
+ }
- @Override
- public byte[] serialize(Boolean obj){
- if(obj != null){
- if(obj){
- return new byte[]{1};
- }else{
- return new byte[]{0};
- }
- }
- return null;
- }
+ @Override
+ public byte[] serialize(Boolean obj) {
+ if (obj != null) {
+ if (obj) {
+ return new byte[] { 1 };
+ } else {
+ return new byte[] { 0 };
+ }
+ }
+ return null;
+ }
- @Override
- public Class<Boolean> type() {
- return Boolean.class;
- }
+ @Override
+ public Class<Boolean> type() {
+ return Boolean.class;
+ }
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Column.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Column.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Column.java
index b64e528..73978e9 100644
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Column.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Column.java
@@ -21,8 +21,10 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
-@Target({ElementType.FIELD})
+@Target({
+ ElementType.FIELD
+})
@Retention(RetentionPolicy.RUNTIME)
public @interface Column {
- String value() default "";
+ String value() default "";
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/ColumnFamily.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/ColumnFamily.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/ColumnFamily.java
index 6e3e9c6..cb03e65 100644
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/ColumnFamily.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/ColumnFamily.java
@@ -21,8 +21,10 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
-@Target({ElementType.TYPE})
+@Target({
+ ElementType.TYPE
+})
@Retention(RetentionPolicy.RUNTIME)
public @interface ColumnFamily {
- String value() default "f";
+ String value() default "f";
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DefaultJavaObjctSerDeser.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DefaultJavaObjctSerDeser.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DefaultJavaObjctSerDeser.java
index 24385a9..36fc63f 100644
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DefaultJavaObjctSerDeser.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DefaultJavaObjctSerDeser.java
@@ -22,11 +22,11 @@ package org.apache.eagle.log.entity.meta;
import org.apache.eagle.common.SerializableUtils;
public class DefaultJavaObjctSerDeser implements EntitySerDeser<Object> {
- public final static EntitySerDeser<Object> INSTANCE = new DefaultJavaObjctSerDeser();
+ public static final EntitySerDeser<Object> INSTANCE = new DefaultJavaObjctSerDeser();
@Override
public Object deserialize(byte[] bytes) {
- return SerializableUtils.deserializeFromByteArray(bytes,"Deserialize from java object bytes");
+ return SerializableUtils.deserializeFromByteArray(bytes, "Deserialize from java object bytes");
}
@Override
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Double2DArraySerDeser.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Double2DArraySerDeser.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Double2DArraySerDeser.java
index 27b011c..b3af8a6 100644
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Double2DArraySerDeser.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/Double2DArraySerDeser.java
@@ -25,22 +25,23 @@ import java.io.IOException;
* @since 7/22/15
*/
public class Double2DArraySerDeser implements EntitySerDeser<double[][]> {
- private final int SIZE = 8;
+ private static final int SIZE = 8;
+
@Override
- public double[][] deserialize(byte[] bytes){
-// if((bytes.length-4) % SIZE != 0)
-// return null;
+ public double[][] deserialize(byte[] bytes) {
+ // if((bytes.length-4) % SIZE != 0)
+ // return null;
int offset = 0;
// get size of int array
int rowSize = ByteUtil.bytesToInt(bytes, offset);
offset += 4;
double[][] data = new double[rowSize][];
- for(int i=0; i<rowSize; i++) {
+ for (int i = 0; i < rowSize; i++) {
int colSize = ByteUtil.bytesToInt(bytes, offset);
offset += 4;
double[] values = null;
- if (colSize >= 0){
+ if (colSize >= 0) {
values = new double[colSize];
for (int j = 0; j < colSize; j++) {
values[j] = ByteUtil.bytesToDouble(bytes, offset);
@@ -54,27 +55,28 @@ public class Double2DArraySerDeser implements EntitySerDeser<double[][]> {
}
/**
- *
* @param obj
* @return
*/
@Override
- public byte[] serialize(double[][] obj){
- if(obj == null) return null;
+ public byte[] serialize(double[][] obj) {
+ if (obj == null) {
+ return null;
+ }
ByteArrayOutputStream data = new ByteArrayOutputStream();
int size = obj.length;
byte[] sizeBytes = ByteUtil.intToBytes(size);
- data.write(sizeBytes,0,sizeBytes.length);
+ data.write(sizeBytes, 0, sizeBytes.length);
- try{
- for(double[] o:obj){
- if(o!=null){
+ try {
+ for (double[] o : obj) {
+ if (o != null) {
data.write(ByteUtil.intToBytes(o.length));
- for(double d:o){
- data.write(ByteUtil.doubleToBytes(d),0,SIZE);
+ for (double d : o) {
+ data.write(ByteUtil.doubleToBytes(d), 0, SIZE);
}
- }else{
- data.write(ByteUtil.intToBytes(-1),0,4);
+ } else {
+ data.write(ByteUtil.intToBytes(-1), 0, 4);
}
}
} catch (IOException e) {
@@ -94,4 +96,4 @@ public class Double2DArraySerDeser implements EntitySerDeser<double[][]> {
public Class<double[][]> type() {
return double[][].class;
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleArraySerDeser.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleArraySerDeser.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleArraySerDeser.java
index d87e31c..a8eb965 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleArraySerDeser.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleArraySerDeser.java
@@ -18,51 +18,54 @@ package org.apache.eagle.log.entity.meta;
import org.apache.eagle.common.ByteUtil;
-public class DoubleArraySerDeser implements EntitySerDeser<double[]>{
+public class DoubleArraySerDeser implements EntitySerDeser<double[]> {
- public DoubleArraySerDeser(){}
+ private static final int SIZE = 8;
- private final int SIZE = 8;
- @Override
- public double[] deserialize(byte[] bytes){
- if((bytes.length-4) % SIZE != 0)
- return null;
- int offset = 0;
- // get size of int array
- int size = ByteUtil.bytesToInt(bytes, offset);
- offset += 4;
- double[] values = new double[size];
- for(int i=0; i<size; i++){
- values[i] = ByteUtil.bytesToDouble(bytes, offset);
- offset += SIZE;
- }
- return values;
- }
-
- /**
- *
- * @param obj
- * @return
- */
- @Override
- public byte[] serialize(double[] obj){
- if(obj == null)
- return null;
- int size = obj.length;
- byte[] array = new byte[4 + SIZE*size];
- byte[] first = ByteUtil.intToBytes(size);
- int offset = 0;
- System.arraycopy(first, 0, array, offset, first.length);
- offset += first.length;
- for(int i=0; i<size; i++){
- System.arraycopy(ByteUtil.doubleToBytes(obj[i]), 0, array, offset, SIZE);
- offset += SIZE;
- }
- return array;
- }
+ public DoubleArraySerDeser() {
+ }
- @Override
- public Class<double[]> type() {
- return double[].class;
- }
+ @Override
+ public double[] deserialize(byte[] bytes) {
+ if ((bytes.length - 4) % SIZE != 0) {
+ return null;
+ }
+ int offset = 0;
+ // get size of int array
+ int size = ByteUtil.bytesToInt(bytes, offset);
+ offset += 4;
+ double[] values = new double[size];
+ for (int i = 0; i < size; i++) {
+ values[i] = ByteUtil.bytesToDouble(bytes, offset);
+ offset += SIZE;
+ }
+ return values;
+ }
+
+ /**
+ * @param obj
+ * @return
+ */
+ @Override
+ public byte[] serialize(double[] obj) {
+ if (obj == null) {
+ return null;
+ }
+ int size = obj.length;
+ byte[] array = new byte[4 + SIZE * size];
+ byte[] first = ByteUtil.intToBytes(size);
+ int offset = 0;
+ System.arraycopy(first, 0, array, offset, first.length);
+ offset += first.length;
+ for (int i = 0; i < size; i++) {
+ System.arraycopy(ByteUtil.doubleToBytes(obj[i]), 0, array, offset, SIZE);
+ offset += SIZE;
+ }
+ return array;
+ }
+
+ @Override
+ public Class<double[]> type() {
+ return double[].class;
+ }
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleSerDeser.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleSerDeser.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleSerDeser.java
index 330a99d..bf58d39 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleSerDeser.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/DoubleSerDeser.java
@@ -18,24 +18,26 @@ package org.apache.eagle.log.entity.meta;
import org.apache.eagle.common.ByteUtil;
-public class DoubleSerDeser implements EntitySerDeser<Double>{
+public class DoubleSerDeser implements EntitySerDeser<Double> {
- @Override
- public Double deserialize(byte[] bytes){
- if(bytes.length < 8)
- return null;
- return ByteUtil.bytesToDouble(bytes);
- }
-
- @Override
- public byte[] serialize(Double obj){
- if(obj == null)
- return null;
- return ByteUtil.doubleToBytes(obj);
- }
+ @Override
+ public Double deserialize(byte[] bytes) {
+ if (bytes.length < 8) {
+ return null;
+ }
+ return ByteUtil.bytesToDouble(bytes);
+ }
- @Override
- public Class<Double> type(){
- return Double.class;
- }
+ @Override
+ public byte[] serialize(Double obj) {
+ if (obj == null) {
+ return null;
+ }
+ return ByteUtil.doubleToBytes(obj);
+ }
+
+ @Override
+ public Class<Double> type() {
+ return Double.class;
+ }
}
http://git-wip-us.apache.org/repos/asf/eagle/blob/6e919c2e/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/EntityDefinition.java
----------------------------------------------------------------------
diff --git a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/EntityDefinition.java b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/EntityDefinition.java
index d2d9eef..c1f4a24 100755
--- a/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/EntityDefinition.java
+++ b/eagle-core/eagle-query/eagle-entity-base/src/main/java/org/apache/eagle/log/entity/meta/EntityDefinition.java
@@ -32,295 +32,333 @@ import java.util.HashMap;
import java.util.Map;
/**
- *
- * This object should be regarded as read-only metadata for an entity as it will be shared across all entity object
- * with the same entity name, so don't try to set different values for any of the fields,
- * otherwise it's not thread safe
+ * This object should be regarded as read-only metadata for an entity as it will be shared across all entity
+ * object with the same entity name, so don't try to set different values for any of the fields, otherwise
+ * it's not thread safe
*/
-public class EntityDefinition implements Writable{
- private final static Logger LOG = LoggerFactory.getLogger(EntityDefinition.class);
-
- private Class<? extends TaggedLogAPIEntity> entityClass;
- private String table;
- private String columnFamily;
- // TODO prefix be within search/get condition instead of entity definition. Topology entity should have pre-defined prefix.
- private String prefix;
- private String service;
- private String serviceCreationPath;
- private String serviceDeletionPath;
- private String[] partitions;
- private Map<String, Qualifier> displayNameMap = new HashMap<String, Qualifier>();
- private Map<String, Qualifier> qualifierNameMap = new HashMap<String, Qualifier>();
- private Map<String, Method> qualifierGetterMap = new HashMap<String, Method>();
- private String[] tags;
- private boolean isTimeSeries;
- private MetricDefinition metricDefinition;
- private IndexDefinition[] indexes;
-
-
- public EntityDefinition(){}
-
- public MetricDefinition getMetricDefinition() {
- return metricDefinition;
- }
- public void setMetricDefinition(MetricDefinition metricDefinition) {
- this.metricDefinition = metricDefinition;
- }
- public boolean isTimeSeries() {
- return isTimeSeries;
- }
- public void setTimeSeries(boolean isTimeSeries) {
- this.isTimeSeries = isTimeSeries;
- }
- public String getColumnFamily() {
- return columnFamily;
- }
- public void setColumnFamily(String columnFamily) {
- this.columnFamily = columnFamily;
- }
- public Class<? extends TaggedLogAPIEntity> getEntityClass() {
- return entityClass;
- }
- public void setEntityClass(Class<? extends TaggedLogAPIEntity> entityClass) {
- this.entityClass = entityClass;
- }
- public String getTable() {
- return table;
- }
- public void setTable(String table) {
- this.table = table;
- }
- public Map<String, Qualifier> getDisplayNameMap() {
- return displayNameMap;
- }
- public void setDisplayNameMap(Map<String, Qualifier> displayNameMap) {
- this.displayNameMap = displayNameMap;
- }
- public Map<String, Qualifier> getQualifierNameMap() {
- return qualifierNameMap;
- }
- public void setQualifierNameMap(Map<String, Qualifier> qualifierNameMap) {
- this.qualifierNameMap = qualifierNameMap;
- }
- public String getPrefix() {
- return prefix;
- }
- public void setPrefix(String prefix) {
- this.prefix = prefix;
- }
- public String getService() {
- return service;
- }
- public void setService(String service) {
- this.service = service;
- }
- public String getServiceCreationPath() {
- return serviceCreationPath;
- }
- public void setServiceCreationPath(String serviceCreationPath) {
- this.serviceCreationPath = serviceCreationPath;
- }
- public String getServiceDeletionPath() {
- return serviceDeletionPath;
- }
- public void setServiceDeletionPath(String serviceDeletionPath) {
- this.serviceDeletionPath = serviceDeletionPath;
- }
- public String[] getPartitions() {
- return partitions;
- }
- public void setPartitions(String[] partitions) {
- this.partitions = partitions;
- }
- public IndexDefinition[] getIndexes() {
- return indexes;
- }
- public void setIndexes(IndexDefinition[] indexes) {
- this.indexes = indexes;
- }
- public Map<String, Method> getQualifierGetterMap() {
- return qualifierGetterMap;
- }
- public void setQualifierGetterMap(Map<String, Method> qualifierGetterMap) {
- this.qualifierGetterMap = qualifierGetterMap;
- }
- public String[] getTags(){
- return tags;
- }
- public void setTags(String[] tags){
- this.tags = tags;
- }
-
-// public Map<String,String> getQualifierDisplayNameMap(){
-// Map<String,String> qualifierDisplayNameMap = new HashMap<String, String>();
-// for(Map.Entry<String,Qualifier> entry: qualifierNameMap.entrySet()){
-// qualifierDisplayNameMap.put(entry.getKey(),entry.getValue().getDisplayName());
-// }
-// return qualifierDisplayNameMap;
-// }
-
- /**
- * a filed is a tag when this field is neither in qualifierNameMap nor in displayNameMap
- * @param field
- * @return
- */
- public boolean isTag(String field){
- return (qualifierNameMap.get(field) == null && displayNameMap.get(field) == null);
-// return (qualifierNameMap.get(field) == null);
- }
-
- /**
- * Check if the specified field is a partition tag field
- */
- public boolean isPartitionTag(String field) {
- if (partitions == null || (!isTag(field))) {
- return false;
- }
- for (String partition : partitions) {
- if (partition.equals(field)) {
- return true;
- }
- }
- return false;
-
- }
-
- public Object getValue(TaggedLogAPIEntity entity, String field) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
- if (!entityClass.equals(entity.getClass())) {
- if ((entityClass.equals(GenericMetricEntity.class) && entity.getClass().equals(GenericMetricShadowEntity.class))) {
- GenericMetricShadowEntity e = (GenericMetricShadowEntity)entity;
- return e.getValue();
- } else {
- throw new IllegalArgumentException("Invalid entity type: " + entity.getClass().getSimpleName());
- }
- }
- final Method m = qualifierGetterMap.get(field);
- if (m == null) {
- // The field is a tag
- if (entity.getTags() != null) {
- return entity.getTags().get(field);
- }
- }
- if (m != null) {
- return m.invoke(entity);
- }
- return null;
- }
-
-
- @Override
- public void write(DataOutput out) throws IOException {
- out.writeUTF(entityClass.getName());
- out.writeUTF(table);
- out.writeUTF(columnFamily);
- out.writeUTF(prefix);
- out.writeUTF(service);
-
- int partitionsLen = 0;
- if(partitions != null) partitionsLen =partitions.length;
- out.writeInt(partitionsLen);
- for (int i = 0; i < partitionsLen; i++) {
- out.writeUTF(partitions[i]);
- }
-
- int displayNameMapSize = displayNameMap.size();
- out.writeInt(displayNameMapSize);
- for(Map.Entry<String,Qualifier> entry: displayNameMap.entrySet()){
- out.writeUTF(entry.getKey());
- entry.getValue().write(out);
- }
-
- int qualifierNameMapSize = qualifierNameMap.size();
- out.writeInt(qualifierNameMapSize);
- for(Map.Entry<String,Qualifier> entry: qualifierNameMap.entrySet()){
- out.writeUTF(entry.getKey());
- entry.getValue().write(out);
- }
-
- // TODO: write qualifierGetterMap
- out.writeBoolean(isTimeSeries);
-
- boolean hasMetricDefinition = metricDefinition != null;
- out.writeBoolean(hasMetricDefinition);
- if(hasMetricDefinition) {
- // write MetricDefinition
- metricDefinition.write(out);
- }
-
- // TODO: write indexes
- }
-
-
- public void setEntityDefinition(EntityDefinition ed){
- this.entityClass = ed.getEntityClass();
- this.table = ed.getTable();
- this.columnFamily = ed.getColumnFamily();
- this.prefix = ed.getPrefix();
- this.service = ed.getService();
- this.partitions = ed.getPartitions();
- this.displayNameMap = ed.getDisplayNameMap();
- this.qualifierGetterMap = ed.getQualifierGetterMap();
+public class EntityDefinition implements Writable {
+ private static final Logger LOG = LoggerFactory.getLogger(EntityDefinition.class);
+
+ private Class<? extends TaggedLogAPIEntity> entityClass;
+ private String table;
+ private String columnFamily;
+ // TODO prefix be within search/get condition instead of entity definition. Topology entity should have
+ // pre-defined prefix.
+ private String prefix;
+ private String service;
+ private String serviceCreationPath;
+ private String serviceDeletionPath;
+ private String[] partitions;
+ private Map<String, Qualifier> displayNameMap = new HashMap<String, Qualifier>();
+ private Map<String, Qualifier> qualifierNameMap = new HashMap<String, Qualifier>();
+ private Map<String, Method> qualifierGetterMap = new HashMap<String, Method>();
+ private String[] tags;
+ private boolean isTimeSeries;
+ private MetricDefinition metricDefinition;
+ private IndexDefinition[] indexes;
+
+ public EntityDefinition() {
+ }
+
+ public MetricDefinition getMetricDefinition() {
+ return metricDefinition;
+ }
+
+ public void setMetricDefinition(MetricDefinition metricDefinition) {
+ this.metricDefinition = metricDefinition;
+ }
+
+ public boolean isTimeSeries() {
+ return isTimeSeries;
+ }
+
+ public void setTimeSeries(boolean isTimeSeries) {
+ this.isTimeSeries = isTimeSeries;
+ }
+
+ public String getColumnFamily() {
+ return columnFamily;
+ }
+
+ public void setColumnFamily(String columnFamily) {
+ this.columnFamily = columnFamily;
+ }
+
+ public Class<? extends TaggedLogAPIEntity> getEntityClass() {
+ return entityClass;
+ }
+
+ public void setEntityClass(Class<? extends TaggedLogAPIEntity> entityClass) {
+ this.entityClass = entityClass;
+ }
+
+ public String getTable() {
+ return table;
+ }
+
+ public void setTable(String table) {
+ this.table = table;
+ }
+
+ public Map<String, Qualifier> getDisplayNameMap() {
+ return displayNameMap;
+ }
+
+ public void setDisplayNameMap(Map<String, Qualifier> displayNameMap) {
+ this.displayNameMap = displayNameMap;
+ }
+
+ public Map<String, Qualifier> getQualifierNameMap() {
+ return qualifierNameMap;
+ }
+
+ public void setQualifierNameMap(Map<String, Qualifier> qualifierNameMap) {
+ this.qualifierNameMap = qualifierNameMap;
+ }
+
+ public String getPrefix() {
+ return prefix;
+ }
+
+ public void setPrefix(String prefix) {
+ this.prefix = prefix;
+ }
+
+ public String getService() {
+ return service;
+ }
+
+ public void setService(String service) {
+ this.service = service;
+ }
+
+ public String getServiceCreationPath() {
+ return serviceCreationPath;
+ }
+
+ public void setServiceCreationPath(String serviceCreationPath) {
+ this.serviceCreationPath = serviceCreationPath;
+ }
+
+ public String getServiceDeletionPath() {
+ return serviceDeletionPath;
+ }
+
+ public void setServiceDeletionPath(String serviceDeletionPath) {
+ this.serviceDeletionPath = serviceDeletionPath;
+ }
+
+ public String[] getPartitions() {
+ return partitions;
+ }
+
+ public void setPartitions(String[] partitions) {
+ this.partitions = partitions;
+ }
+
+ public IndexDefinition[] getIndexes() {
+ return indexes;
+ }
+
+ public void setIndexes(IndexDefinition[] indexes) {
+ this.indexes = indexes;
+ }
+
+ public Map<String, Method> getQualifierGetterMap() {
+ return qualifierGetterMap;
+ }
+
+ public void setQualifierGetterMap(Map<String, Method> qualifierGetterMap) {
+ this.qualifierGetterMap = qualifierGetterMap;
+ }
+
+ public String[] getTags() {
+ return tags;
+ }
+
+ public void setTags(String[] tags) {
+ this.tags = tags;
+ }
+
+ // public Map<String,String> getQualifierDisplayNameMap(){
+ // Map<String,String> qualifierDisplayNameMap = new HashMap<String, String>();
+ // for(Map.Entry<String,Qualifier> entry: qualifierNameMap.entrySet()){
+ // qualifierDisplayNameMap.put(entry.getKey(),entry.getValue().getDisplayName());
+ // }
+ // return qualifierDisplayNameMap;
+ // }
+
+ /**
+ * a filed is a tag when this field is neither in qualifierNameMap nor in displayNameMap
+ *
+ * @param field
+ * @return
+ */
+ public boolean isTag(String field) {
+ return (qualifierNameMap.get(field) == null && displayNameMap.get(field) == null);
+ // return (qualifierNameMap.get(field) == null);
+ }
+
+ /**
+ * Check if the specified field is a partition tag field
+ */
+ public boolean isPartitionTag(String field) {
+ if (partitions == null || (!isTag(field))) {
+ return false;
+ }
+ for (String partition : partitions) {
+ if (partition.equals(field)) {
+ return true;
+ }
+ }
+ return false;
+
+ }
+
+ public Object getValue(TaggedLogAPIEntity entity, String field)
+ throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
+ if (!entityClass.equals(entity.getClass())) {
+ if ((entityClass.equals(GenericMetricEntity.class)
+ && entity.getClass().equals(GenericMetricShadowEntity.class))) {
+ GenericMetricShadowEntity e = (GenericMetricShadowEntity)entity;
+ return e.getValue();
+ } else {
+ throw new IllegalArgumentException("Invalid entity type: "
+ + entity.getClass().getSimpleName());
+ }
+ }
+ final Method m = qualifierGetterMap.get(field);
+ if (m == null) {
+ // The field is a tag
+ if (entity.getTags() != null) {
+ return entity.getTags().get(field);
+ }
+ }
+ if (m != null) {
+ return m.invoke(entity);
+ }
+ return null;
+ }
+
+ @Override
+ public void write(DataOutput out) throws IOException {
+ out.writeUTF(entityClass.getName());
+ out.writeUTF(table);
+ out.writeUTF(columnFamily);
+ out.writeUTF(prefix);
+ out.writeUTF(service);
+
+ int partitionsLen = 0;
+ if (partitions != null) {
+ partitionsLen = partitions.length;
+ }
+ out.writeInt(partitionsLen);
+ for (int i = 0; i < partitionsLen; i++) {
+ out.writeUTF(partitions[i]);
+ }
+
+ int displayNameMapSize = displayNameMap.size();
+ out.writeInt(displayNameMapSize);
+ for (Map.Entry<String, Qualifier> entry : displayNameMap.entrySet()) {
+ out.writeUTF(entry.getKey());
+ entry.getValue().write(out);
+ }
+
+ int qualifierNameMapSize = qualifierNameMap.size();
+ out.writeInt(qualifierNameMapSize);
+ for (Map.Entry<String, Qualifier> entry : qualifierNameMap.entrySet()) {
+ out.writeUTF(entry.getKey());
+ entry.getValue().write(out);
+ }
+
+ // TODO: write qualifierGetterMap
+ out.writeBoolean(isTimeSeries);
+
+ boolean hasMetricDefinition = metricDefinition != null;
+ out.writeBoolean(hasMetricDefinition);
+ if (hasMetricDefinition) {
+ // write MetricDefinition
+ metricDefinition.write(out);
+ }
+
+ // TODO: write indexes
+ }
+
+ public void setEntityDefinition(EntityDefinition ed) {
+ this.entityClass = ed.getEntityClass();
+ this.table = ed.getTable();
+ this.columnFamily = ed.getColumnFamily();
+ this.prefix = ed.getPrefix();
+ this.service = ed.getService();
+ this.partitions = ed.getPartitions();
+ this.displayNameMap = ed.getDisplayNameMap();
+ this.qualifierGetterMap = ed.getQualifierGetterMap();
this.qualifierNameMap = ed.getQualifierNameMap();
- this.isTimeSeries = ed.isTimeSeries();
- this.metricDefinition = ed.metricDefinition;
- this.indexes = ed.getIndexes();
- }
-
- //////////////////////////////////////////////
- // TODO: Cache object for reading in region side
- //////////////////////////////////////////////
- // private final static Map<String,EntityDefinition> _classEntityDefinitionCache = new HashMap<String, EntityDefinition>();
-
- @Override
- public void readFields(DataInput in) throws IOException {
- String entityClassName = in.readUTF();
-// EntityDefinition _cached = _classEntityDefinitionCache.get(entityClassName);
-// if(_cached !=null){
-// setEntityDefinition(_cached);
-// LOG.info("Got cached definition for entity: "+entityClassName);
-// return;
-// }
- if(LOG.isDebugEnabled()) LOG.debug("Reading EntityDefinition entity: "+entityClassName);
- try {
- entityClass = (Class<? extends TaggedLogAPIEntity>) Class.forName(entityClassName);
- } catch (Exception e) {
- // ignore
- }
- table = in.readUTF();
- columnFamily = in.readUTF();
- prefix = in.readUTF();
- service = in.readUTF();
-
- int partitionsLen = in.readInt();
- partitions = new String[partitionsLen];
- for (int i = 0; i < partitionsLen; i++) {
- partitions[i] = in.readUTF();
- }
- int displayNameMapSize = in.readInt();
- for(int i=0;i<displayNameMapSize;i++){
- String key = in.readUTF();
- Qualifier value = new Qualifier();
- value.readFields(in);
- displayNameMap.put(key,value);
- }
- int qualifierNameMapSize = in.readInt();
- for(int i=0;i<qualifierNameMapSize;i++){
- String key = in.readUTF();
- Qualifier value = new Qualifier();
- value.readFields(in);
- qualifierNameMap.put(key,value);
- }
- // TODO: readFields qualifierGetterMap
- isTimeSeries = in.readBoolean();
-
- // readFields MetricDefinition
- boolean hasMetricDefinition = in.readBoolean();
- if(hasMetricDefinition) {
- if(LOG.isDebugEnabled()) LOG.debug("reading metricDefinition");
- metricDefinition = new MetricDefinition();
- metricDefinition.readFields(in);
- }
- // TODO: readFields indexes
-// _classEntityDefinitionCache.put(entityClassName,this);
- }
-}
\ No newline at end of file
+ this.isTimeSeries = ed.isTimeSeries();
+ this.metricDefinition = ed.metricDefinition;
+ this.indexes = ed.getIndexes();
+ }
+
+ //////////////////////////////////////////////
+ // TODO: Cache object for reading in region side
+ //////////////////////////////////////////////
+ // private static final Map<String,EntityDefinition> _classEntityDefinitionCache = new HashMap<String,
+ ////////////////////////////////////////////// EntityDefinition>();
+
+ @Override
+ public void readFields(DataInput in) throws IOException {
+ String entityClassName = in.readUTF();
+ // EntityDefinition _cached = _classEntityDefinitionCache.get(entityClassName);
+ // if(_cached !=null){
+ // setEntityDefinition(_cached);
+ // LOG.info("Got cached definition for entity: "+entityClassName);
+ // return;
+ // }
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Reading EntityDefinition entity: " + entityClassName);
+ }
+ try {
+ entityClass = (Class<? extends TaggedLogAPIEntity>)Class.forName(entityClassName);
+ } catch (Exception e) {
+ // ignore
+ }
+ table = in.readUTF();
+ columnFamily = in.readUTF();
+ prefix = in.readUTF();
+ service = in.readUTF();
+
+ int partitionsLen = in.readInt();
+ partitions = new String[partitionsLen];
+ for (int i = 0; i < partitionsLen; i++) {
+ partitions[i] = in.readUTF();
+ }
+ int displayNameMapSize = in.readInt();
+ for (int i = 0; i < displayNameMapSize; i++) {
+ String key = in.readUTF();
+ Qualifier value = new Qualifier();
+ value.readFields(in);
+ displayNameMap.put(key, value);
+ }
+ int qualifierNameMapSize = in.readInt();
+ for (int i = 0; i < qualifierNameMapSize; i++) {
+ String key = in.readUTF();
+ Qualifier value = new Qualifier();
+ value.readFields(in);
+ qualifierNameMap.put(key, value);
+ }
+ // TODO: readFields qualifierGetterMap
+ isTimeSeries = in.readBoolean();
+
+ // readFields MetricDefinition
+ boolean hasMetricDefinition = in.readBoolean();
+ if (hasMetricDefinition) {
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("reading metricDefinition");
+ }
+ metricDefinition = new MetricDefinition();
+ metricDefinition.readFields(in);
+ }
+ // TODO: readFields indexes
+ // _classEntityDefinitionCache.put(entityClassName,this);
+ }
+}