// Path: src/main/java/com/chickling/kmanager/model/OffsetHistoryQueryParams.java
// public class OffsetHistoryQueryParams {
// 	private String interval; // 5m, 30m, 1h, 1d
// 	private String range; // 8h, 16h, 1d, 2d, 1w
// 	private String rangeto;
// 	private String topic;
// 	private String group;
// 
// 	public String getTopic() {
// 		return topic;
// 	}
// 
// 	public void setTopic(String topic) {
// 		this.topic = topic;
// 	}
// 
// 	public String getGroup() {
// 		return group;
// 	}
// 
// 	public void setGroup(String group) {
// 		this.group = group;
// 	}
// 
// 	public String getInterval() {
// 		return interval;
// 	}
// 
// 	public void setInterval(String interval) {
// 		this.interval = interval;
// 	}
// 
// 	public String getRange() {
// 		return range;
// 	}
// 
// 	public void setRange(String range) {
// 		this.range = range;
// 	}
// 
// 	public String getRangeto() {
// 		return rangeto;
// 	}
// 
// 	public void setRangeto(String rangeto) {
// 		this.rangeto = rangeto;
// 	}
// 
// 	@Override
// 	public String toString() {
// 		return "LagRequestParams [interval=" + interval + ", range=" + range + ", rangeTo=" + rangeto + ", topic="
// 				+ topic + ", group=" + group + "]";
// 	}
// }
// 
// Path: src/main/java/com/chickling/kmanager/model/OffsetPoints.java
// public class OffsetPoints {
//   private Long timestamp;
//   private Integer partition;
//   private String owner;
//   private Long offset;
//   private Long logSize;
// 
//   public OffsetPoints() {
//     super();
//   }
// 
//   public OffsetPoints(Long timestamp, Integer partition, String owner, Long offset, Long logSize) {
//     super();
//     this.timestamp = timestamp;
//     this.partition = partition;
//     this.owner = owner;
//     this.offset = offset;
//     this.logSize = logSize;
//   }
// 
//   public Long getTimestamp() {
//     return timestamp;
//   }
// 
//   public void setTimestamp(Long timestamp) {
//     this.timestamp = timestamp;
//   }
// 
//   public Integer getPartition() {
//     return partition;
//   }
// 
//   public void setPartition(Integer partition) {
//     this.partition = partition;
//   }
// 
//   public String getOwner() {
//     return owner;
//   }
// 
//   public void setOwner(String owner) {
//     this.owner = owner;
//   }
// 
//   public Long getOffset() {
//     return offset;
//   }
// 
//   public void setOffset(Long offset) {
//     this.offset = offset;
//   }
// 
//   public Long getLogSize() {
//     return logSize;
//   }
// 
//   public void setLogSize(Long logSize) {
//     this.logSize = logSize;
//   }
// 
//   @Override
//   public String toString() {
//     return "OffsetPoints [timestamp=" + timestamp + ", partition=" + partition + ", owner=" + owner + ", offset=" + offset + ", logSize="
//         + logSize + "]";
//   }
// 
// 
// }


import java.util.List;
import org.json.JSONObject;
import com.chickling.kmanager.model.OffsetHistoryQueryParams;
import com.chickling.kmanager.model.OffsetPoints;
package com.chickling.kmanager.utils.elasticsearch;




/**
 * @author Hulva Luva.H
 * @since 2017-7-19
 *
 */
public interface Ielasticsearch {

  void bulkIndex(JSONObject data, String docType, String indexPrefix);

  List<OffsetPoints> offsetHistory(String indexPrefix, String docType, String group, String topic);

// Path: src/main/java/com/chickling/kmanager/model/OffsetHistoryQueryParams.java
// public class OffsetHistoryQueryParams {
// 	private String interval; // 5m, 30m, 1h, 1d
// 	private String range; // 8h, 16h, 1d, 2d, 1w
// 	private String rangeto;
// 	private String topic;
// 	private String group;
// 
// 	public String getTopic() {
// 		return topic;
// 	}
// 
// 	public void setTopic(String topic) {
// 		this.topic = topic;
// 	}
// 
// 	public String getGroup() {
// 		return group;
// 	}
// 
// 	public void setGroup(String group) {
// 		this.group = group;
// 	}
// 
// 	public String getInterval() {
// 		return interval;
// 	}
// 
// 	public void setInterval(String interval) {
// 		this.interval = interval;
// 	}
// 
// 	public String getRange() {
// 		return range;
// 	}
// 
// 	public void setRange(String range) {
// 		this.range = range;
// 	}
// 
// 	public String getRangeto() {
// 		return rangeto;
// 	}
// 
// 	public void setRangeto(String rangeto) {
// 		this.rangeto = rangeto;
// 	}
// 
// 	@Override
// 	public String toString() {
// 		return "LagRequestParams [interval=" + interval + ", range=" + range + ", rangeTo=" + rangeto + ", topic="
// 				+ topic + ", group=" + group + "]";
// 	}
// }
// 
// Path: src/main/java/com/chickling/kmanager/model/OffsetPoints.java
// public class OffsetPoints {
//   private Long timestamp;
//   private Integer partition;
//   private String owner;
//   private Long offset;
//   private Long logSize;
// 
//   public OffsetPoints() {
//     super();
//   }
// 
//   public OffsetPoints(Long timestamp, Integer partition, String owner, Long offset, Long logSize) {
//     super();
//     this.timestamp = timestamp;
//     this.partition = partition;
//     this.owner = owner;
//     this.offset = offset;
//     this.logSize = logSize;
//   }
// 
//   public Long getTimestamp() {
//     return timestamp;
//   }
// 
//   public void setTimestamp(Long timestamp) {
//     this.timestamp = timestamp;
//   }
// 
//   public Integer getPartition() {
//     return partition;
//   }
// 
//   public void setPartition(Integer partition) {
//     this.partition = partition;
//   }
// 
//   public String getOwner() {
//     return owner;
//   }
// 
//   public void setOwner(String owner) {
//     this.owner = owner;
//   }
// 
//   public Long getOffset() {
//     return offset;
//   }
// 
//   public void setOffset(Long offset) {
//     this.offset = offset;
//   }
// 
//   public Long getLogSize() {
//     return logSize;
//   }
// 
//   public void setLogSize(Long logSize) {
//     this.logSize = logSize;
//   }
// 
//   @Override
//   public String toString() {
//     return "OffsetPoints [timestamp=" + timestamp + ", partition=" + partition + ", owner=" + owner + ", offset=" + offset + ", logSize="
//         + logSize + "]";
//   }
// 
// 
// }


// Path: src/main/java/com/chickling/kmanager/utils/elasticsearch/Ielasticsearch.java
import java.util.List;
import org.json.JSONObject;
import com.chickling.kmanager.model.OffsetHistoryQueryParams;
import com.chickling.kmanager.model.OffsetPoints;

package com.chickling.kmanager.utils.elasticsearch;




/**
 * @author Hulva Luva.H
 * @since 2017-7-19
 *
 */
public interface Ielasticsearch {

  void bulkIndex(JSONObject data, String docType, String indexPrefix);

  List<OffsetPoints> offsetHistory(String indexPrefix, String docType, String group, String topic);

  List<OffsetPoints> scrollsSearcher(OffsetHistoryQueryParams params, String docType, String indexPrefix);