http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/7137006b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Metric.java ---------------------------------------------------------------------- diff --git a/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Metric.java b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Metric.java new file mode 100644 index 0000000..91043a6 --- /dev/null +++ b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Metric.java @@ -0,0 +1,894 @@ +/** + * Autogenerated by Thrift Compiler (0.9.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +package org.apache.blur.thrift.generated; + +/** + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + + +import org.apache.blur.thirdparty.thrift_0_9_0.scheme.IScheme; +import org.apache.blur.thirdparty.thrift_0_9_0.scheme.SchemeFactory; +import org.apache.blur.thirdparty.thrift_0_9_0.scheme.StandardScheme; + +import org.apache.blur.thirdparty.thrift_0_9_0.scheme.TupleScheme; +import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TTupleProtocol; +import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolException; +import org.apache.blur.thirdparty.thrift_0_9_0.EncodingUtils; +import org.apache.blur.thirdparty.thrift_0_9_0.TException; +import java.util.List; +import java.util.ArrayList; +import java.util.Map; +import java.util.HashMap; +import java.util.EnumMap; +import java.util.Set; +import java.util.HashSet; +import java.util.EnumSet; +import java.util.Collections; +import java.util.BitSet; +import java.nio.ByteBuffer; +import java.util.Arrays; +//import org.slf4j.Logger; +//import org.slf4j.LoggerFactory; + +public class Metric implements org.apache.blur.thirdparty.thrift_0_9_0.TBase<Metric, Metric._Fields>, java.io.Serializable, Cloneable { + private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct STRUCT_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct("Metric"); + + private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField NAME_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("name", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, (short)1); + private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField STR_MAP_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("strMap", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, (short)2); + private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField LONG_MAP_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("longMap", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, (short)3); + private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField DOUBLE_MAP_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("doubleMap", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, (short)4); + + private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>(); + static { + schemes.put(StandardScheme.class, new MetricStandardSchemeFactory()); + schemes.put(TupleScheme.class, new MetricTupleSchemeFactory()); + } + + public String name; // required + public Map<String,String> strMap; // required + public Map<String,Long> longMap; // required + public Map<String,Double> doubleMap; // required + + /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ + public enum _Fields implements org.apache.blur.thirdparty.thrift_0_9_0.TFieldIdEnum { + NAME((short)1, "name"), + STR_MAP((short)2, "strMap"), + LONG_MAP((short)3, "longMap"), + DOUBLE_MAP((short)4, "doubleMap"); + + private static final Map<String, _Fields> byName = new HashMap<String, _Fields>(); + + static { + for (_Fields field : EnumSet.allOf(_Fields.class)) { + byName.put(field.getFieldName(), field); + } + } + + /** + * Find the _Fields constant that matches fieldId, or null if its not found. + */ + public static _Fields findByThriftId(int fieldId) { + switch(fieldId) { + case 1: // NAME + return NAME; + case 2: // STR_MAP + return STR_MAP; + case 3: // LONG_MAP + return LONG_MAP; + case 4: // DOUBLE_MAP + return DOUBLE_MAP; + default: + return null; + } + } + + /** + * Find the _Fields constant that matches fieldId, throwing an exception + * if it is not found. + */ + public static _Fields findByThriftIdOrThrow(int fieldId) { + _Fields fields = findByThriftId(fieldId); + if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!"); + return fields; + } + + /** + * Find the _Fields constant that matches name, or null if its not found. + */ + public static _Fields findByName(String name) { + return byName.get(name); + } + + private final short _thriftId; + private final String _fieldName; + + _Fields(short thriftId, String fieldName) { + _thriftId = thriftId; + _fieldName = fieldName; + } + + public short getThriftFieldId() { + return _thriftId; + } + + public String getFieldName() { + return _fieldName; + } + } + + // isset id assignments + public static final Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> metaDataMap; + static { + Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData>(_Fields.class); + tmpMap.put(_Fields.NAME, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("name", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING))); + tmpMap.put(_Fields.STR_MAP, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("strMap", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.MapMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING), + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING)))); + tmpMap.put(_Fields.LONG_MAP, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("longMap", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.MapMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING), + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64)))); + tmpMap.put(_Fields.DOUBLE_MAP, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("doubleMap", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.MapMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING), + new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE)))); + metaDataMap = Collections.unmodifiableMap(tmpMap); + org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData.addStructMetaDataMap(Metric.class, metaDataMap); + } + + public Metric() { + } + + public Metric( + String name, + Map<String,String> strMap, + Map<String,Long> longMap, + Map<String,Double> doubleMap) + { + this(); + this.name = name; + this.strMap = strMap; + this.longMap = longMap; + this.doubleMap = doubleMap; + } + + /** + * Performs a deep copy on <i>other</i>. + */ + public Metric(Metric other) { + if (other.isSetName()) { + this.name = other.name; + } + if (other.isSetStrMap()) { + Map<String,String> __this__strMap = new HashMap<String,String>(); + for (Map.Entry<String, String> other_element : other.strMap.entrySet()) { + + String other_element_key = other_element.getKey(); + String other_element_value = other_element.getValue(); + + String __this__strMap_copy_key = other_element_key; + + String __this__strMap_copy_value = other_element_value; + + __this__strMap.put(__this__strMap_copy_key, __this__strMap_copy_value); + } + this.strMap = __this__strMap; + } + if (other.isSetLongMap()) { + Map<String,Long> __this__longMap = new HashMap<String,Long>(); + for (Map.Entry<String, Long> other_element : other.longMap.entrySet()) { + + String other_element_key = other_element.getKey(); + Long other_element_value = other_element.getValue(); + + String __this__longMap_copy_key = other_element_key; + + Long __this__longMap_copy_value = other_element_value; + + __this__longMap.put(__this__longMap_copy_key, __this__longMap_copy_value); + } + this.longMap = __this__longMap; + } + if (other.isSetDoubleMap()) { + Map<String,Double> __this__doubleMap = new HashMap<String,Double>(); + for (Map.Entry<String, Double> other_element : other.doubleMap.entrySet()) { + + String other_element_key = other_element.getKey(); + Double other_element_value = other_element.getValue(); + + String __this__doubleMap_copy_key = other_element_key; + + Double __this__doubleMap_copy_value = other_element_value; + + __this__doubleMap.put(__this__doubleMap_copy_key, __this__doubleMap_copy_value); + } + this.doubleMap = __this__doubleMap; + } + } + + public Metric deepCopy() { + return new Metric(this); + } + + @Override + public void clear() { + this.name = null; + this.strMap = null; + this.longMap = null; + this.doubleMap = null; + } + + public String getName() { + return this.name; + } + + public Metric setName(String name) { + this.name = name; + return this; + } + + public void unsetName() { + this.name = null; + } + + /** Returns true if field name is set (has been assigned a value) and false otherwise */ + public boolean isSetName() { + return this.name != null; + } + + public void setNameIsSet(boolean value) { + if (!value) { + this.name = null; + } + } + + public int getStrMapSize() { + return (this.strMap == null) ? 0 : this.strMap.size(); + } + + public void putToStrMap(String key, String val) { + if (this.strMap == null) { + this.strMap = new HashMap<String,String>(); + } + this.strMap.put(key, val); + } + + public Map<String,String> getStrMap() { + return this.strMap; + } + + public Metric setStrMap(Map<String,String> strMap) { + this.strMap = strMap; + return this; + } + + public void unsetStrMap() { + this.strMap = null; + } + + /** Returns true if field strMap is set (has been assigned a value) and false otherwise */ + public boolean isSetStrMap() { + return this.strMap != null; + } + + public void setStrMapIsSet(boolean value) { + if (!value) { + this.strMap = null; + } + } + + public int getLongMapSize() { + return (this.longMap == null) ? 0 : this.longMap.size(); + } + + public void putToLongMap(String key, long val) { + if (this.longMap == null) { + this.longMap = new HashMap<String,Long>(); + } + this.longMap.put(key, val); + } + + public Map<String,Long> getLongMap() { + return this.longMap; + } + + public Metric setLongMap(Map<String,Long> longMap) { + this.longMap = longMap; + return this; + } + + public void unsetLongMap() { + this.longMap = null; + } + + /** Returns true if field longMap is set (has been assigned a value) and false otherwise */ + public boolean isSetLongMap() { + return this.longMap != null; + } + + public void setLongMapIsSet(boolean value) { + if (!value) { + this.longMap = null; + } + } + + public int getDoubleMapSize() { + return (this.doubleMap == null) ? 0 : this.doubleMap.size(); + } + + public void putToDoubleMap(String key, double val) { + if (this.doubleMap == null) { + this.doubleMap = new HashMap<String,Double>(); + } + this.doubleMap.put(key, val); + } + + public Map<String,Double> getDoubleMap() { + return this.doubleMap; + } + + public Metric setDoubleMap(Map<String,Double> doubleMap) { + this.doubleMap = doubleMap; + return this; + } + + public void unsetDoubleMap() { + this.doubleMap = null; + } + + /** Returns true if field doubleMap is set (has been assigned a value) and false otherwise */ + public boolean isSetDoubleMap() { + return this.doubleMap != null; + } + + public void setDoubleMapIsSet(boolean value) { + if (!value) { + this.doubleMap = null; + } + } + + public void setFieldValue(_Fields field, Object value) { + switch (field) { + case NAME: + if (value == null) { + unsetName(); + } else { + setName((String)value); + } + break; + + case STR_MAP: + if (value == null) { + unsetStrMap(); + } else { + setStrMap((Map<String,String>)value); + } + break; + + case LONG_MAP: + if (value == null) { + unsetLongMap(); + } else { + setLongMap((Map<String,Long>)value); + } + break; + + case DOUBLE_MAP: + if (value == null) { + unsetDoubleMap(); + } else { + setDoubleMap((Map<String,Double>)value); + } + break; + + } + } + + public Object getFieldValue(_Fields field) { + switch (field) { + case NAME: + return getName(); + + case STR_MAP: + return getStrMap(); + + case LONG_MAP: + return getLongMap(); + + case DOUBLE_MAP: + return getDoubleMap(); + + } + throw new IllegalStateException(); + } + + /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */ + public boolean isSet(_Fields field) { + if (field == null) { + throw new IllegalArgumentException(); + } + + switch (field) { + case NAME: + return isSetName(); + case STR_MAP: + return isSetStrMap(); + case LONG_MAP: + return isSetLongMap(); + case DOUBLE_MAP: + return isSetDoubleMap(); + } + throw new IllegalStateException(); + } + + @Override + public boolean equals(Object that) { + if (that == null) + return false; + if (that instanceof Metric) + return this.equals((Metric)that); + return false; + } + + public boolean equals(Metric that) { + if (that == null) + return false; + + boolean this_present_name = true && this.isSetName(); + boolean that_present_name = true && that.isSetName(); + if (this_present_name || that_present_name) { + if (!(this_present_name && that_present_name)) + return false; + if (!this.name.equals(that.name)) + return false; + } + + boolean this_present_strMap = true && this.isSetStrMap(); + boolean that_present_strMap = true && that.isSetStrMap(); + if (this_present_strMap || that_present_strMap) { + if (!(this_present_strMap && that_present_strMap)) + return false; + if (!this.strMap.equals(that.strMap)) + return false; + } + + boolean this_present_longMap = true && this.isSetLongMap(); + boolean that_present_longMap = true && that.isSetLongMap(); + if (this_present_longMap || that_present_longMap) { + if (!(this_present_longMap && that_present_longMap)) + return false; + if (!this.longMap.equals(that.longMap)) + return false; + } + + boolean this_present_doubleMap = true && this.isSetDoubleMap(); + boolean that_present_doubleMap = true && that.isSetDoubleMap(); + if (this_present_doubleMap || that_present_doubleMap) { + if (!(this_present_doubleMap && that_present_doubleMap)) + return false; + if (!this.doubleMap.equals(that.doubleMap)) + return false; + } + + return true; + } + + @Override + public int hashCode() { + return 0; + } + + public int compareTo(Metric other) { + if (!getClass().equals(other.getClass())) { + return getClass().getName().compareTo(other.getClass().getName()); + } + + int lastComparison = 0; + Metric typedOther = (Metric)other; + + lastComparison = Boolean.valueOf(isSetName()).compareTo(typedOther.isSetName()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetName()) { + lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.name, typedOther.name); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetStrMap()).compareTo(typedOther.isSetStrMap()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetStrMap()) { + lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.strMap, typedOther.strMap); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetLongMap()).compareTo(typedOther.isSetLongMap()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetLongMap()) { + lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.longMap, typedOther.longMap); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetDoubleMap()).compareTo(typedOther.isSetDoubleMap()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetDoubleMap()) { + lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.doubleMap, typedOther.doubleMap); + if (lastComparison != 0) { + return lastComparison; + } + } + return 0; + } + + public _Fields fieldForId(int fieldId) { + return _Fields.findByThriftId(fieldId); + } + + public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + schemes.get(iprot.getScheme()).getScheme().read(iprot, this); + } + + public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + schemes.get(oprot.getScheme()).getScheme().write(oprot, this); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder("Metric("); + boolean first = true; + + sb.append("name:"); + if (this.name == null) { + sb.append("null"); + } else { + sb.append(this.name); + } + first = false; + if (!first) sb.append(", "); + sb.append("strMap:"); + if (this.strMap == null) { + sb.append("null"); + } else { + sb.append(this.strMap); + } + first = false; + if (!first) sb.append(", "); + sb.append("longMap:"); + if (this.longMap == null) { + sb.append("null"); + } else { + sb.append(this.longMap); + } + first = false; + if (!first) sb.append(", "); + sb.append("doubleMap:"); + if (this.doubleMap == null) { + sb.append("null"); + } else { + sb.append(this.doubleMap); + } + first = false; + sb.append(")"); + return sb.toString(); + } + + public void validate() throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + // check for required fields + // check for sub-struct validity + } + + private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { + try { + write(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(out))); + } catch (org.apache.blur.thirdparty.thrift_0_9_0.TException te) { + throw new java.io.IOException(te); + } + } + + private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { + try { + read(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(in))); + } catch (org.apache.blur.thirdparty.thrift_0_9_0.TException te) { + throw new java.io.IOException(te); + } + } + + private static class MetricStandardSchemeFactory implements SchemeFactory { + public MetricStandardScheme getScheme() { + return new MetricStandardScheme(); + } + } + + private static class MetricStandardScheme extends StandardScheme<Metric> { + + public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot, Metric struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField schemeField; + iprot.readStructBegin(); + while (true) + { + schemeField = iprot.readFieldBegin(); + if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STOP) { + break; + } + switch (schemeField.id) { + case 1: // NAME + if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) { + struct.name = iprot.readString(); + struct.setNameIsSet(true); + } else { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 2: // STR_MAP + if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP) { + { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map176 = iprot.readMapBegin(); + struct.strMap = new HashMap<String,String>(2*_map176.size); + for (int _i177 = 0; _i177 < _map176.size; ++_i177) + { + String _key178; // required + String _val179; // optional + _key178 = iprot.readString(); + _val179 = iprot.readString(); + struct.strMap.put(_key178, _val179); + } + iprot.readMapEnd(); + } + struct.setStrMapIsSet(true); + } else { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 3: // LONG_MAP + if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP) { + { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map180 = iprot.readMapBegin(); + struct.longMap = new HashMap<String,Long>(2*_map180.size); + for (int _i181 = 0; _i181 < _map180.size; ++_i181) + { + String _key182; // required + long _val183; // optional + _key182 = iprot.readString(); + _val183 = iprot.readI64(); + struct.longMap.put(_key182, _val183); + } + iprot.readMapEnd(); + } + struct.setLongMapIsSet(true); + } else { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 4: // DOUBLE_MAP + if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP) { + { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map184 = iprot.readMapBegin(); + struct.doubleMap = new HashMap<String,Double>(2*_map184.size); + for (int _i185 = 0; _i185 < _map184.size; ++_i185) + { + String _key186; // required + double _val187; // optional + _key186 = iprot.readString(); + _val187 = iprot.readDouble(); + struct.doubleMap.put(_key186, _val187); + } + iprot.readMapEnd(); + } + struct.setDoubleMapIsSet(true); + } else { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + default: + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + iprot.readFieldEnd(); + } + iprot.readStructEnd(); + + // check for required fields of primitive type, which can't be checked in the validate method + struct.validate(); + } + + public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot, Metric struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + struct.validate(); + + oprot.writeStructBegin(STRUCT_DESC); + if (struct.name != null) { + oprot.writeFieldBegin(NAME_FIELD_DESC); + oprot.writeString(struct.name); + oprot.writeFieldEnd(); + } + if (struct.strMap != null) { + oprot.writeFieldBegin(STR_MAP_FIELD_DESC); + { + oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, struct.strMap.size())); + for (Map.Entry<String, String> _iter188 : struct.strMap.entrySet()) + { + oprot.writeString(_iter188.getKey()); + oprot.writeString(_iter188.getValue()); + } + oprot.writeMapEnd(); + } + oprot.writeFieldEnd(); + } + if (struct.longMap != null) { + oprot.writeFieldBegin(LONG_MAP_FIELD_DESC); + { + oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64, struct.longMap.size())); + for (Map.Entry<String, Long> _iter189 : struct.longMap.entrySet()) + { + oprot.writeString(_iter189.getKey()); + oprot.writeI64(_iter189.getValue()); + } + oprot.writeMapEnd(); + } + oprot.writeFieldEnd(); + } + if (struct.doubleMap != null) { + oprot.writeFieldBegin(DOUBLE_MAP_FIELD_DESC); + { + oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE, struct.doubleMap.size())); + for (Map.Entry<String, Double> _iter190 : struct.doubleMap.entrySet()) + { + oprot.writeString(_iter190.getKey()); + oprot.writeDouble(_iter190.getValue()); + } + oprot.writeMapEnd(); + } + oprot.writeFieldEnd(); + } + oprot.writeFieldStop(); + oprot.writeStructEnd(); + } + + } + + private static class MetricTupleSchemeFactory implements SchemeFactory { + public MetricTupleScheme getScheme() { + return new MetricTupleScheme(); + } + } + + private static class MetricTupleScheme extends TupleScheme<Metric> { + + @Override + public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, Metric struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + TTupleProtocol oprot = (TTupleProtocol) prot; + BitSet optionals = new BitSet(); + if (struct.isSetName()) { + optionals.set(0); + } + if (struct.isSetStrMap()) { + optionals.set(1); + } + if (struct.isSetLongMap()) { + optionals.set(2); + } + if (struct.isSetDoubleMap()) { + optionals.set(3); + } + oprot.writeBitSet(optionals, 4); + if (struct.isSetName()) { + oprot.writeString(struct.name); + } + if (struct.isSetStrMap()) { + { + oprot.writeI32(struct.strMap.size()); + for (Map.Entry<String, String> _iter191 : struct.strMap.entrySet()) + { + oprot.writeString(_iter191.getKey()); + oprot.writeString(_iter191.getValue()); + } + } + } + if (struct.isSetLongMap()) { + { + oprot.writeI32(struct.longMap.size()); + for (Map.Entry<String, Long> _iter192 : struct.longMap.entrySet()) + { + oprot.writeString(_iter192.getKey()); + oprot.writeI64(_iter192.getValue()); + } + } + } + if (struct.isSetDoubleMap()) { + { + oprot.writeI32(struct.doubleMap.size()); + for (Map.Entry<String, Double> _iter193 : struct.doubleMap.entrySet()) + { + oprot.writeString(_iter193.getKey()); + oprot.writeDouble(_iter193.getValue()); + } + } + } + } + + @Override + public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, Metric struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException { + TTupleProtocol iprot = (TTupleProtocol) prot; + BitSet incoming = iprot.readBitSet(4); + if (incoming.get(0)) { + struct.name = iprot.readString(); + struct.setNameIsSet(true); + } + if (incoming.get(1)) { + { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map194 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, iprot.readI32()); + struct.strMap = new HashMap<String,String>(2*_map194.size); + for (int _i195 = 0; _i195 < _map194.size; ++_i195) + { + String _key196; // required + String _val197; // optional + _key196 = iprot.readString(); + _val197 = iprot.readString(); + struct.strMap.put(_key196, _val197); + } + } + struct.setStrMapIsSet(true); + } + if (incoming.get(2)) { + { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map198 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64, iprot.readI32()); + struct.longMap = new HashMap<String,Long>(2*_map198.size); + for (int _i199 = 0; _i199 < _map198.size; ++_i199) + { + String _key200; // required + long _val201; // optional + _key200 = iprot.readString(); + _val201 = iprot.readI64(); + struct.longMap.put(_key200, _val201); + } + } + struct.setLongMapIsSet(true); + } + if (incoming.get(3)) { + { + org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map202 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE, iprot.readI32()); + struct.doubleMap = new HashMap<String,Double>(2*_map202.size); + for (int _i203 = 0; _i203 < _map202.size; ++_i203) + { + String _key204; // required + double _val205; // optional + _key204 = iprot.readString(); + _val205 = iprot.readDouble(); + struct.doubleMap.put(_key204, _val205); + } + } + struct.setDoubleMapIsSet(true); + } + } + } + +} +
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/7137006b/blur-thrift/src/main/java/org/apache/blur/thrift/util/QueryMetrics.java ---------------------------------------------------------------------- diff --git a/blur-thrift/src/main/java/org/apache/blur/thrift/util/QueryMetrics.java b/blur-thrift/src/main/java/org/apache/blur/thrift/util/QueryMetrics.java new file mode 100644 index 0000000..27d0077 --- /dev/null +++ b/blur-thrift/src/main/java/org/apache/blur/thrift/util/QueryMetrics.java @@ -0,0 +1,43 @@ +package org.apache.blur.thrift.util; + +/** + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import java.io.IOException; +import java.util.Map; +import java.util.TreeMap; + +import org.apache.blur.thirdparty.thrift_0_9_0.TException; +import org.apache.blur.thrift.BlurClient; +import org.apache.blur.thrift.generated.Blur.Iface; +import org.apache.blur.thrift.generated.BlurException; +import org.apache.blur.thrift.generated.Metric; + +public class QueryMetrics { + + public static void main(String[] args) throws BlurException, TException, IOException { + String connectionStr = args[0]; + + Iface client = BlurClient.getClient(connectionStr); + Map<String, Metric> metrics = new TreeMap<String, Metric>(client.metrics(null)); + for (Metric m : metrics.values()) { + System.out.println(m.getName()); + System.out.println("\t" + m.getDoubleMap()); + System.out.println("\t" + m.getLongMap()); + System.out.println("\t" + m.getStrMap()); + } + } +} http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/7137006b/distribution/src/main/scripts/interface/Blur.thrift ---------------------------------------------------------------------- diff --git a/distribution/src/main/scripts/interface/Blur.thrift b/distribution/src/main/scripts/interface/Blur.thrift index a0f5c87..0c8fff1 100644 --- a/distribution/src/main/scripts/interface/Blur.thrift +++ b/distribution/src/main/scripts/interface/Blur.thrift @@ -694,7 +694,12 @@ struct TableDescriptor { 14:map<string,string> tableProperties } - +struct Metric { + 1:string name, + 2:map<string,string> strMap, + 3:map<string,i64> longMap, + 4:map<string,double> doubleMap +} /** * @@ -765,6 +770,13 @@ service Blur { BlurResults query(1:string table, 2:BlurQuery blurQuery) throws (1:BlurException ex) /** + * Parses the given query and return the string represents the query. + * @param table the table name. + * @param simpleQuery the query to parse. + */ + string parseQuery(1:string table, 2:SimpleQuery simpleQuery) throws (1:BlurException ex) + + /** * Cancels a query that is executing against the given table with the given uuid. Note, the cancel call maybe take some time for the query actually stops executing. * @param table the table name. * @param uuid the uuid of the query. @@ -810,6 +822,9 @@ service Blur { bool isInSafeMode(1:string cluster) throws (1:BlurException ex) map<string,string> configuration() throws (1:BlurException ex) + + map<string,Metric> metrics(1:set<string> metrics) throws (1:BlurException ex) + } http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/7137006b/distribution/src/main/scripts/interface/gen-html/Blur.html ---------------------------------------------------------------------- diff --git a/distribution/src/main/scripts/interface/gen-html/Blur.html b/distribution/src/main/scripts/interface/gen-html/Blur.html index 063415b..f91ed0d 100644 --- a/distribution/src/main/scripts/interface/gen-html/Blur.html +++ b/distribution/src/main/scripts/interface/gen-html/Blur.html @@ -22,9 +22,11 @@ <li><a href="Blur.html#Fn_Blur_fetchRow">fetchRow</a></li> <li><a href="Blur.html#Fn_Blur_getTableStats">getTableStats</a></li> <li><a href="Blur.html#Fn_Blur_isInSafeMode">isInSafeMode</a></li> +<li><a href="Blur.html#Fn_Blur_metrics">metrics</a></li> <li><a href="Blur.html#Fn_Blur_mutate">mutate</a></li> <li><a href="Blur.html#Fn_Blur_mutateBatch">mutateBatch</a></li> <li><a href="Blur.html#Fn_Blur_optimize">optimize</a></li> +<li><a href="Blur.html#Fn_Blur_parseQuery">parseQuery</a></li> <li><a href="Blur.html#Fn_Blur_query">query</a></li> <li><a href="Blur.html#Fn_Blur_queryStatusById">queryStatusById</a></li> <li><a href="Blur.html#Fn_Blur_queryStatusIdList">queryStatusIdList</a></li> @@ -59,6 +61,7 @@ <a href="Blur.html#Struct_FetchResult">FetchResult</a><br/> <a href="Blur.html#Struct_FetchRowResult">FetchRowResult</a><br/> <a href="Blur.html#Struct_HighlightOptions">HighlightOptions</a><br/> +<a href="Blur.html#Struct_Metric">Metric</a><br/> <a href="Blur.html#Enum_QueryState">QueryState</a><br/> <a href="Blur.html#Struct_Record">Record</a><br/> <a href="Blur.html#Struct_RecordMutation">RecordMutation</a><br/> @@ -448,7 +451,13 @@ updates through MapReduce are allowed and in fact they are only allowed if the t </td><td>default</td><td></td></tr> <tr><td>14</td><td>tableProperties</td><td><code>map<<code>string</code>, <code>string</code>></code></td><td></td><td>default</td><td></td></tr> </table><br/><p/> -<br/></div><hr/><h2 id="Services">Services</h2> +<br/></div><div class="definition"><h3 id="Struct_Metric">Struct: Metric</h3> +<table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead> +<tr><td>1</td><td>name</td><td><code>string</code></td><td></td><td>default</td><td></td></tr> +<tr><td>2</td><td>strMap</td><td><code>map<<code>string</code>, <code>string</code>></code></td><td></td><td>default</td><td></td></tr> +<tr><td>3</td><td>longMap</td><td><code>map<<code>string</code>, <code>i64</code>></code></td><td></td><td>default</td><td></td></tr> +<tr><td>4</td><td>doubleMap</td><td><code>map<<code>string</code>, <code>double</code>></code></td><td></td><td>default</td><td></td></tr> +</table><br/></div><hr/><h2 id="Services">Services</h2> <h3 id="Svc_Blur">Service: Blur</h3> <p/> <br/><div class="definition"><h4 id="Fn_Blur_shardClusterList">Function: Blur.shardClusterList</h4> @@ -512,6 +521,13 @@ the shard given the same situation. </pre>Executes a query against a the given table and returns the results. If this method is executed against a controller the results will contain the aggregated results from all the shards. If this method is executed against a shard server the results will only contain aggregated results from the shards of the given table that are being served on the shard server, if any. @param table the table name. @param blurQuery the query to execute. +<br/></div><div class="definition"><h4 id="Fn_Blur_parseQuery">Function: Blur.parseQuery</h4> +<pre><code>string</code> parseQuery(<code>string</code> table, + <code><a href="Blur.html#Struct_SimpleQuery">SimpleQuery</a></code> simpleQuery) + throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code> +</pre>Parses the given query and return the string represents the query. +@param table the table name. +@param simpleQuery the query to parse. <br/></div><div class="definition"><h4 id="Fn_Blur_cancelQuery">Function: Blur.cancelQuery</h4> <pre><code>void</code> cancelQuery(<code>string</code> table, <code>i64</code> uuid) @@ -591,4 +607,7 @@ the shard given the same situation. </pre></div><div class="definition"><h4 id="Fn_Blur_configuration">Function: Blur.configuration</h4> <pre><code>map<<code>string</code>, <code>string</code>></code> configuration() throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code> +</pre></div><div class="definition"><h4 id="Fn_Blur_metrics">Function: Blur.metrics</h4> +<pre><code>map<<code>string</code>, <code><a href="Blur.html#Struct_Metric">Metric</a></code>></code> metrics(<code>set<<code>string</code>></code> metrics) + throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code> </pre></div></div></body></html> http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/7137006b/distribution/src/main/scripts/interface/gen-html/index.html ---------------------------------------------------------------------- diff --git a/distribution/src/main/scripts/interface/gen-html/index.html b/distribution/src/main/scripts/interface/gen-html/index.html index a1b554a..f5836f7 100644 --- a/distribution/src/main/scripts/interface/gen-html/index.html +++ b/distribution/src/main/scripts/interface/gen-html/index.html @@ -18,9 +18,11 @@ <li><a href="Blur.html#Fn_Blur_fetchRow">fetchRow</a></li> <li><a href="Blur.html#Fn_Blur_getTableStats">getTableStats</a></li> <li><a href="Blur.html#Fn_Blur_isInSafeMode">isInSafeMode</a></li> +<li><a href="Blur.html#Fn_Blur_metrics">metrics</a></li> <li><a href="Blur.html#Fn_Blur_mutate">mutate</a></li> <li><a href="Blur.html#Fn_Blur_mutateBatch">mutateBatch</a></li> <li><a href="Blur.html#Fn_Blur_optimize">optimize</a></li> +<li><a href="Blur.html#Fn_Blur_parseQuery">parseQuery</a></li> <li><a href="Blur.html#Fn_Blur_query">query</a></li> <li><a href="Blur.html#Fn_Blur_queryStatusById">queryStatusById</a></li> <li><a href="Blur.html#Fn_Blur_queryStatusIdList">queryStatusIdList</a></li> @@ -55,6 +57,7 @@ <a href="Blur.html#Struct_FetchResult">FetchResult</a><br/> <a href="Blur.html#Struct_FetchRowResult">FetchRowResult</a><br/> <a href="Blur.html#Struct_HighlightOptions">HighlightOptions</a><br/> +<a href="Blur.html#Struct_Metric">Metric</a><br/> <a href="Blur.html#Enum_QueryState">QueryState</a><br/> <a href="Blur.html#Struct_Record">Record</a><br/> <a href="Blur.html#Struct_RecordMutation">RecordMutation</a><br/>
