package com.zillabyte.motherbrain.relational;
import net.sf.json.JSONObject;
import org.eclipse.jdt.annotation.NonNullByDefault;
import com.zillabyte.motherbrain.flow.sourcefromrelation.ShardType;
public class S3OnlyQuery extends AliasedQuery {
private static final long serialVersionUID = -7267594005164663029L;
private JSONObject _settings;
public @NonNullByDefault S3OnlyQuery(JSONObject settings) {
super("", columnsFor(settings));
_settings = settings;
}
public String bucket() {
return _settings.getString("s3_bucket");
}
public String prefix() {
return _settings.getString("s3_root");
}
@Override
public ShardType shardType() {
if(_settings.containsKey("shard_type")){
String shardType = _settings.getString("shard_type");
if(shardType != null){
if("csv".equals(shardType) || "csv_redshift".equals(shardType))
return ShardType.CSV_REDSHIFT;
if("csv_collectors".equals(shardType))
return ShardType.CSV_COLLECTORS;
else if ("json".equals(shardType))
return ShardType.JSON;
}
}
return ShardType.JSON;
}
}