/** * Autogenerated by Thrift * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING */ package com.flaptor.indextank.rpc; 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; import org.apache.thrift.*; import org.apache.thrift.async.*; import org.apache.thrift.meta_data.*; import org.apache.thrift.transport.*; import org.apache.thrift.protocol.*; @SuppressWarnings("all") public class LogWriter { public interface Iface { public void send_batch(LogBatch batch) throws TException; } public interface AsyncIface { public void send_batch(LogBatch batch, AsyncMethodCallback<AsyncClient.send_batch_call> resultHandler) throws TException; } public static class Client implements TServiceClient, Iface { public static class Factory implements TServiceClientFactory<Client> { public Factory() {} public Client getClient(TProtocol prot) { return new Client(prot); } public Client getClient(TProtocol iprot, TProtocol oprot) { return new Client(iprot, oprot); } } public Client(TProtocol prot) { this(prot, prot); } public Client(TProtocol iprot, TProtocol oprot) { iprot_ = iprot; oprot_ = oprot; } protected TProtocol iprot_; protected TProtocol oprot_; protected int seqid_; public TProtocol getInputProtocol() { return this.iprot_; } public TProtocol getOutputProtocol() { return this.oprot_; } public void send_batch(LogBatch batch) throws TException { send_send_batch(batch); recv_send_batch(); } public void send_send_batch(LogBatch batch) throws TException { oprot_.writeMessageBegin(new TMessage("send_batch", TMessageType.CALL, ++seqid_)); send_batch_args args = new send_batch_args(); args.set_batch(batch); args.write(oprot_); oprot_.writeMessageEnd(); oprot_.getTransport().flush(); } public void recv_send_batch() throws TException { TMessage msg = iprot_.readMessageBegin(); if (msg.type == TMessageType.EXCEPTION) { TApplicationException x = TApplicationException.read(iprot_); iprot_.readMessageEnd(); throw x; } if (msg.seqid != seqid_) { throw new TApplicationException(TApplicationException.BAD_SEQUENCE_ID, "send_batch failed: out of sequence response"); } send_batch_result result = new send_batch_result(); result.read(iprot_); iprot_.readMessageEnd(); return; } } public static class AsyncClient extends TAsyncClient implements AsyncIface { public static class Factory implements TAsyncClientFactory<AsyncClient> { private TAsyncClientManager clientManager; private TProtocolFactory protocolFactory; public Factory(TAsyncClientManager clientManager, TProtocolFactory protocolFactory) { this.clientManager = clientManager; this.protocolFactory = protocolFactory; } public AsyncClient getAsyncClient(TNonblockingTransport transport) { return new AsyncClient(protocolFactory, clientManager, transport); } } public AsyncClient(TProtocolFactory protocolFactory, TAsyncClientManager clientManager, TNonblockingTransport transport) { super(protocolFactory, clientManager, transport); } public void send_batch(LogBatch batch, AsyncMethodCallback<send_batch_call> resultHandler) throws TException { checkReady(); send_batch_call method_call = new send_batch_call(batch, resultHandler, this, protocolFactory, transport); manager.call(method_call); } public static class send_batch_call extends TAsyncMethodCall { private LogBatch batch; public send_batch_call(LogBatch batch, AsyncMethodCallback<send_batch_call> resultHandler, TAsyncClient client, TProtocolFactory protocolFactory, TNonblockingTransport transport) throws TException { super(client, protocolFactory, transport, resultHandler, false); this.batch = batch; } public void write_args(TProtocol prot) throws TException { prot.writeMessageBegin(new TMessage("send_batch", TMessageType.CALL, 0)); send_batch_args args = new send_batch_args(); args.set_batch(batch); args.write(prot); prot.writeMessageEnd(); } public void getResult() throws TException { if (getState() != State.RESPONSE_READ) { throw new IllegalStateException("Method call not finished!"); } TMemoryInputTransport memoryTransport = new TMemoryInputTransport(getFrameBuffer().array()); TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport); (new Client(prot)).recv_send_batch(); } } } public static class Processor implements TProcessor { private static final Logger LOGGER = LoggerFactory.getLogger(Processor.class.getName()); public Processor(Iface iface) { iface_ = iface; processMap_.put("send_batch", new send_batch()); } protected static interface ProcessFunction { public void process(int seqid, TProtocol iprot, TProtocol oprot) throws TException; } private Iface iface_; protected final HashMap<String,ProcessFunction> processMap_ = new HashMap<String,ProcessFunction>(); public boolean process(TProtocol iprot, TProtocol oprot) throws TException { TMessage msg = iprot.readMessageBegin(); ProcessFunction fn = processMap_.get(msg.name); if (fn == null) { TProtocolUtil.skip(iprot, TType.STRUCT); iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.UNKNOWN_METHOD, "Invalid method name: '"+msg.name+"'"); oprot.writeMessageBegin(new TMessage(msg.name, TMessageType.EXCEPTION, msg.seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); return true; } fn.process(msg.seqid, iprot, oprot); return true; } private class send_batch implements ProcessFunction { public void process(int seqid, TProtocol iprot, TProtocol oprot) throws TException { send_batch_args args = new send_batch_args(); try { args.read(iprot); } catch (TProtocolException e) { iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.PROTOCOL_ERROR, e.getMessage()); oprot.writeMessageBegin(new TMessage("send_batch", TMessageType.EXCEPTION, seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); return; } iprot.readMessageEnd(); send_batch_result result = new send_batch_result(); iface_.send_batch(args.batch); oprot.writeMessageBegin(new TMessage("send_batch", TMessageType.REPLY, seqid)); result.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); } } } public static class send_batch_args implements TBase<send_batch_args, send_batch_args._Fields>, java.io.Serializable, Cloneable { private static final TStruct STRUCT_DESC = new TStruct("send_batch_args"); private static final TField BATCH_FIELD_DESC = new TField("batch", TType.STRUCT, (short)1); private LogBatch batch; /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements TFieldIdEnum { BATCH((short)1, "batch"); 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: // BATCH return BATCH; 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, FieldMetaData> metaDataMap; static { Map<_Fields, FieldMetaData> tmpMap = new EnumMap<_Fields, FieldMetaData>(_Fields.class); tmpMap.put(_Fields.BATCH, new FieldMetaData("batch", TFieldRequirementType.DEFAULT, new StructMetaData(TType.STRUCT, LogBatch.class))); metaDataMap = Collections.unmodifiableMap(tmpMap); FieldMetaData.addStructMetaDataMap(send_batch_args.class, metaDataMap); } public send_batch_args() { } public send_batch_args( LogBatch batch) { this(); this.batch = batch; } /** * Performs a deep copy on <i>other</i>. */ public send_batch_args(send_batch_args other) { if (other.is_set_batch()) { this.batch = new LogBatch(other.batch); } } public send_batch_args deepCopy() { return new send_batch_args(this); } @Override public void clear() { this.batch = null; } public LogBatch get_batch() { return this.batch; } public send_batch_args set_batch(LogBatch batch) { this.batch = batch; return this; } public void unset_batch() { this.batch = null; } /** Returns true if field batch is set (has been asigned a value) and false otherwise */ public boolean is_set_batch() { return this.batch != null; } public void set_batch_isSet(boolean value) { if (!value) { this.batch = null; } } public void setFieldValue(_Fields field, Object value) { switch (field) { case BATCH: if (value == null) { unset_batch(); } else { set_batch((LogBatch)value); } break; } } public Object getFieldValue(_Fields field) { switch (field) { case BATCH: return get_batch(); } throw new IllegalStateException(); } /** Returns true if field corresponding to fieldID is set (has been asigned a value) and false otherwise */ public boolean isSet(_Fields field) { if (field == null) { throw new IllegalArgumentException(); } switch (field) { case BATCH: return is_set_batch(); } throw new IllegalStateException(); } @Override public boolean equals(Object that) { if (that == null) return false; if (that instanceof send_batch_args) return this.equals((send_batch_args)that); return false; } public boolean equals(send_batch_args that) { if (that == null) return false; boolean this_present_batch = true && this.is_set_batch(); boolean that_present_batch = true && that.is_set_batch(); if (this_present_batch || that_present_batch) { if (!(this_present_batch && that_present_batch)) return false; if (!this.batch.equals(that.batch)) return false; } return true; } @Override public int hashCode() { return 0; } public int compareTo(send_batch_args other) { if (!getClass().equals(other.getClass())) { return getClass().getName().compareTo(other.getClass().getName()); } int lastComparison = 0; send_batch_args typedOther = (send_batch_args)other; lastComparison = Boolean.valueOf(is_set_batch()).compareTo(typedOther.is_set_batch()); if (lastComparison != 0) { return lastComparison; } if (is_set_batch()) { lastComparison = TBaseHelper.compareTo(this.batch, typedOther.batch); if (lastComparison != 0) { return lastComparison; } } return 0; } public _Fields fieldForId(int fieldId) { return _Fields.findByThriftId(fieldId); } public void read(TProtocol iprot) throws TException { TField field; iprot.readStructBegin(); while (true) { field = iprot.readFieldBegin(); if (field.type == TType.STOP) { break; } switch (field.id) { case 1: // BATCH if (field.type == TType.STRUCT) { this.batch = new LogBatch(); this.batch.read(iprot); } else { TProtocolUtil.skip(iprot, field.type); } break; default: TProtocolUtil.skip(iprot, field.type); } iprot.readFieldEnd(); } iprot.readStructEnd(); // check for required fields of primitive type, which can't be checked in the validate method validate(); } public void write(TProtocol oprot) throws TException { validate(); oprot.writeStructBegin(STRUCT_DESC); if (this.batch != null) { oprot.writeFieldBegin(BATCH_FIELD_DESC); this.batch.write(oprot); oprot.writeFieldEnd(); } oprot.writeFieldStop(); oprot.writeStructEnd(); } @Override public String toString() { StringBuilder sb = new StringBuilder("send_batch_args("); boolean first = true; sb.append("batch:"); if (this.batch == null) { sb.append("null"); } else { sb.append(this.batch); } first = false; sb.append(")"); return sb.toString(); } public void validate() throws TException { // check for required fields } } public static class send_batch_result implements TBase<send_batch_result, send_batch_result._Fields>, java.io.Serializable, Cloneable { private static final TStruct STRUCT_DESC = new TStruct("send_batch_result"); /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements TFieldIdEnum { ; 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) { 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, FieldMetaData> metaDataMap; static { Map<_Fields, FieldMetaData> tmpMap = new EnumMap<_Fields, FieldMetaData>(_Fields.class); metaDataMap = Collections.unmodifiableMap(tmpMap); FieldMetaData.addStructMetaDataMap(send_batch_result.class, metaDataMap); } public send_batch_result() { } /** * Performs a deep copy on <i>other</i>. */ public send_batch_result(send_batch_result other) { } public send_batch_result deepCopy() { return new send_batch_result(this); } @Override public void clear() { } public void setFieldValue(_Fields field, Object value) { switch (field) { } } public Object getFieldValue(_Fields field) { switch (field) { } throw new IllegalStateException(); } /** Returns true if field corresponding to fieldID is set (has been asigned a value) and false otherwise */ public boolean isSet(_Fields field) { if (field == null) { throw new IllegalArgumentException(); } switch (field) { } throw new IllegalStateException(); } @Override public boolean equals(Object that) { if (that == null) return false; if (that instanceof send_batch_result) return this.equals((send_batch_result)that); return false; } public boolean equals(send_batch_result that) { if (that == null) return false; return true; } @Override public int hashCode() { return 0; } public int compareTo(send_batch_result other) { if (!getClass().equals(other.getClass())) { return getClass().getName().compareTo(other.getClass().getName()); } int lastComparison = 0; send_batch_result typedOther = (send_batch_result)other; return 0; } public _Fields fieldForId(int fieldId) { return _Fields.findByThriftId(fieldId); } public void read(TProtocol iprot) throws TException { TField field; iprot.readStructBegin(); while (true) { field = iprot.readFieldBegin(); if (field.type == TType.STOP) { break; } switch (field.id) { default: TProtocolUtil.skip(iprot, field.type); } iprot.readFieldEnd(); } iprot.readStructEnd(); // check for required fields of primitive type, which can't be checked in the validate method validate(); } public void write(TProtocol oprot) throws TException { oprot.writeStructBegin(STRUCT_DESC); oprot.writeFieldStop(); oprot.writeStructEnd(); } @Override public String toString() { StringBuilder sb = new StringBuilder("send_batch_result("); boolean first = true; sb.append(")"); return sb.toString(); } public void validate() throws TException { // check for required fields } } }