ezbake.data.elastic.thrift.GeoSortValue.java Source code

Java tutorial

Introduction

Here is the source code for ezbake.data.elastic.thrift.GeoSortValue.java

Source

/*   Copyright (C) 2013-2014 Computer Sciences Corporation
 *
 * Licensed 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. */

/**
 * Autogenerated by Thrift Compiler (0.9.1)
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 *  @generated
 */
package ezbake.data.elastic.thrift;

import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.thrift.scheme.IScheme;
import org.apache.thrift.scheme.SchemeFactory;
import org.apache.thrift.scheme.StandardScheme;

import org.apache.thrift.scheme.TupleScheme;
import org.apache.thrift.protocol.TTupleProtocol;
import org.apache.thrift.protocol.TProtocolException;
import org.apache.thrift.EncodingUtils;
import org.apache.thrift.TException;
import org.apache.thrift.async.AsyncMethodCallback;
import org.apache.thrift.server.AbstractNonblockingServer.*;
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;

/**
 * A geo value used for comparisons  in sorting. For example, to sort by a distance from a point `coordinate`.
 */
public class GeoSortValue extends org.apache.thrift.TUnion<GeoSortValue, GeoSortValue._Fields> {
    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct(
            "GeoSortValue");
    private static final org.apache.thrift.protocol.TField GEO_HASH_FIELD_DESC = new org.apache.thrift.protocol.TField(
            "geoHash", org.apache.thrift.protocol.TType.STRING, (short) 1);
    private static final org.apache.thrift.protocol.TField COORDINATE_FIELD_DESC = new org.apache.thrift.protocol.TField(
            "coordinate", org.apache.thrift.protocol.TType.STRUCT, (short) 2);

    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
    public enum _Fields implements org.apache.thrift.TFieldIdEnum {
        GEO_HASH((short) 1, "geoHash"), COORDINATE((short) 2, "coordinate");

        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: // GEO_HASH
                return GEO_HASH;
            case 2: // COORDINATE
                return COORDINATE;
            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;
        }
    }

    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
    static {
        Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(
                _Fields.class);
        tmpMap.put(_Fields.GEO_HASH, new org.apache.thrift.meta_data.FieldMetaData("geoHash",
                org.apache.thrift.TFieldRequirementType.DEFAULT,
                new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
        tmpMap.put(_Fields.COORDINATE,
                new org.apache.thrift.meta_data.FieldMetaData("coordinate",
                        org.apache.thrift.TFieldRequirementType.DEFAULT,
                        new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT,
                                ezbake.base.thrift.Coordinate.class)));
        metaDataMap = Collections.unmodifiableMap(tmpMap);
        org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(GeoSortValue.class, metaDataMap);
    }

    public GeoSortValue() {
        super();
    }

    public GeoSortValue(_Fields setField, Object value) {
        super(setField, value);
    }

    public GeoSortValue(GeoSortValue other) {
        super(other);
    }

    public GeoSortValue deepCopy() {
        return new GeoSortValue(this);
    }

    public static GeoSortValue geoHash(String value) {
        GeoSortValue x = new GeoSortValue();
        x.setGeoHash(value);
        return x;
    }

    public static GeoSortValue coordinate(ezbake.base.thrift.Coordinate value) {
        GeoSortValue x = new GeoSortValue();
        x.setCoordinate(value);
        return x;
    }

    @Override
    protected void checkType(_Fields setField, Object value) throws ClassCastException {
        switch (setField) {
        case GEO_HASH:
            if (value instanceof String) {
                break;
            }
            throw new ClassCastException("Was expecting value of type String for field 'geoHash', but got "
                    + value.getClass().getSimpleName());
        case COORDINATE:
            if (value instanceof ezbake.base.thrift.Coordinate) {
                break;
            }
            throw new ClassCastException(
                    "Was expecting value of type ezbake.base.thrift.Coordinate for field 'coordinate', but got "
                            + value.getClass().getSimpleName());
        default:
            throw new IllegalArgumentException("Unknown field id " + setField);
        }
    }

    @Override
    protected Object standardSchemeReadValue(org.apache.thrift.protocol.TProtocol iprot,
            org.apache.thrift.protocol.TField field) throws org.apache.thrift.TException {
        _Fields setField = _Fields.findByThriftId(field.id);
        if (setField != null) {
            switch (setField) {
            case GEO_HASH:
                if (field.type == GEO_HASH_FIELD_DESC.type) {
                    String geoHash;
                    geoHash = iprot.readString();
                    return geoHash;
                } else {
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
                    return null;
                }
            case COORDINATE:
                if (field.type == COORDINATE_FIELD_DESC.type) {
                    ezbake.base.thrift.Coordinate coordinate;
                    coordinate = new ezbake.base.thrift.Coordinate();
                    coordinate.read(iprot);
                    return coordinate;
                } else {
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
                    return null;
                }
            default:
                throw new IllegalStateException(
                        "setField wasn't null, but didn't match any of the case statements!");
            }
        } else {
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
            return null;
        }
    }

    @Override
    protected void standardSchemeWriteValue(org.apache.thrift.protocol.TProtocol oprot)
            throws org.apache.thrift.TException {
        switch (setField_) {
        case GEO_HASH:
            String geoHash = (String) value_;
            oprot.writeString(geoHash);
            return;
        case COORDINATE:
            ezbake.base.thrift.Coordinate coordinate = (ezbake.base.thrift.Coordinate) value_;
            coordinate.write(oprot);
            return;
        default:
            throw new IllegalStateException("Cannot write union with unknown field " + setField_);
        }
    }

    @Override
    protected Object tupleSchemeReadValue(org.apache.thrift.protocol.TProtocol iprot, short fieldID)
            throws org.apache.thrift.TException {
        _Fields setField = _Fields.findByThriftId(fieldID);
        if (setField != null) {
            switch (setField) {
            case GEO_HASH:
                String geoHash;
                geoHash = iprot.readString();
                return geoHash;
            case COORDINATE:
                ezbake.base.thrift.Coordinate coordinate;
                coordinate = new ezbake.base.thrift.Coordinate();
                coordinate.read(iprot);
                return coordinate;
            default:
                throw new IllegalStateException(
                        "setField wasn't null, but didn't match any of the case statements!");
            }
        } else {
            throw new TProtocolException("Couldn't find a field with field id " + fieldID);
        }
    }

    @Override
    protected void tupleSchemeWriteValue(org.apache.thrift.protocol.TProtocol oprot)
            throws org.apache.thrift.TException {
        switch (setField_) {
        case GEO_HASH:
            String geoHash = (String) value_;
            oprot.writeString(geoHash);
            return;
        case COORDINATE:
            ezbake.base.thrift.Coordinate coordinate = (ezbake.base.thrift.Coordinate) value_;
            coordinate.write(oprot);
            return;
        default:
            throw new IllegalStateException("Cannot write union with unknown field " + setField_);
        }
    }

    @Override
    protected org.apache.thrift.protocol.TField getFieldDesc(_Fields setField) {
        switch (setField) {
        case GEO_HASH:
            return GEO_HASH_FIELD_DESC;
        case COORDINATE:
            return COORDINATE_FIELD_DESC;
        default:
            throw new IllegalArgumentException("Unknown field id " + setField);
        }
    }

    @Override
    protected org.apache.thrift.protocol.TStruct getStructDesc() {
        return STRUCT_DESC;
    }

    @Override
    protected _Fields enumForId(short id) {
        return _Fields.findByThriftIdOrThrow(id);
    }

    public _Fields fieldForId(int fieldId) {
        return _Fields.findByThriftId(fieldId);
    }

    public String getGeoHash() {
        if (getSetField() == _Fields.GEO_HASH) {
            return (String) getFieldValue();
        } else {
            throw new RuntimeException("Cannot get field 'geoHash' because union is currently set to "
                    + getFieldDesc(getSetField()).name);
        }
    }

    public void setGeoHash(String value) {
        if (value == null)
            throw new NullPointerException();
        setField_ = _Fields.GEO_HASH;
        value_ = value;
    }

    public ezbake.base.thrift.Coordinate getCoordinate() {
        if (getSetField() == _Fields.COORDINATE) {
            return (ezbake.base.thrift.Coordinate) getFieldValue();
        } else {
            throw new RuntimeException("Cannot get field 'coordinate' because union is currently set to "
                    + getFieldDesc(getSetField()).name);
        }
    }

    public void setCoordinate(ezbake.base.thrift.Coordinate value) {
        if (value == null)
            throw new NullPointerException();
        setField_ = _Fields.COORDINATE;
        value_ = value;
    }

    public boolean isSetGeoHash() {
        return setField_ == _Fields.GEO_HASH;
    }

    public boolean isSetCoordinate() {
        return setField_ == _Fields.COORDINATE;
    }

    public boolean equals(Object other) {
        if (other instanceof GeoSortValue) {
            return equals((GeoSortValue) other);
        } else {
            return false;
        }
    }

    public boolean equals(GeoSortValue other) {
        return other != null && getSetField() == other.getSetField()
                && getFieldValue().equals(other.getFieldValue());
    }

    @Override
    public int compareTo(GeoSortValue other) {
        int lastComparison = org.apache.thrift.TBaseHelper.compareTo(getSetField(), other.getSetField());
        if (lastComparison == 0) {
            return org.apache.thrift.TBaseHelper.compareTo(getFieldValue(), other.getFieldValue());
        }
        return lastComparison;
    }

    @Override
    public int hashCode() {
        HashCodeBuilder hcb = new HashCodeBuilder();
        hcb.append(this.getClass().getName());
        org.apache.thrift.TFieldIdEnum setField = getSetField();
        if (setField != null) {
            hcb.append(setField.getThriftFieldId());
            Object value = getFieldValue();
            if (value instanceof org.apache.thrift.TEnum) {
                hcb.append(((org.apache.thrift.TEnum) getFieldValue()).getValue());
            } else {
                hcb.append(value);
            }
        }
        return hcb.toHashCode();
    }

    private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
        try {
            write(new org.apache.thrift.protocol.TCompactProtocol(
                    new org.apache.thrift.transport.TIOStreamTransport(out)));
        } catch (org.apache.thrift.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.thrift.protocol.TCompactProtocol(
                    new org.apache.thrift.transport.TIOStreamTransport(in)));
        } catch (org.apache.thrift.TException te) {
            throw new java.io.IOException(te);
        }
    }

}