blob: e70107f2e195e17820b475e87e2aa34545a3d5c6 [file] [log] [blame]
package org.jclouds.snia.cdmi.v1.queryparams;
import java.util.HashMap;
import org.jclouds.http.options.BaseHttpRequestOptions;
import com.google.common.collect.Multimap;
/**
* Generate CDMI data object query parameters
* Example:
* dataObject = dataApi.getDataObject(containerName,dataObjectNameIn,DataObjectQueryParams.Builder.field("parentURI"));
* dataObject = dataApi.getDataObject(containerName,dataObjectNameIn,DataObjectQueryParams.Builder.value());
*
* @author Kenneth Nagin
*/
public class DataObjectQueryParams extends CDMIObjectQueryParams {
public DataObjectQueryParams() {
super();
}
/**
* Get CDMI data object's field value
* @param fieldname
* @return this
*/
public DataObjectQueryParams field(String fieldname) {
super.field(fieldname);
return this;
}
/**
* Get CDMI data object's metadata
* @return this
*/
public DataObjectQueryParams metadata() {
super.metadata();
return this;
}
/**
* Get CDMI data object's metadata associated with prefix
* @param prefix
* @return this
*/
public DataObjectQueryParams metadata(String prefix) {
super.metadata(prefix);
return this;
}
/**
* Get CDMI data object's value with range
* @return this
*/
public DataObjectQueryParams value() {
queryParams = queryParams + "value;";
return this;
}
/**
* Get CDMI data object's value within range
* @param from
* @param to
* @return this
*/
public DataObjectQueryParams value(int from, int to) {
queryParams = queryParams + "value:"+from+"-"+to+";";
return this;
}
public static class Builder {
public static DataObjectQueryParams field(
String fieldname) {
DataObjectQueryParams options = new DataObjectQueryParams();
return (DataObjectQueryParams) options.field(fieldname);
}
public static DataObjectQueryParams metadata() {
DataObjectQueryParams options = new DataObjectQueryParams();
return (DataObjectQueryParams) options.metadata();
}
public static DataObjectQueryParams metadata(
String prefix) {
DataObjectQueryParams options = new DataObjectQueryParams();
return (DataObjectQueryParams) options.metadata(prefix);
}
public static DataObjectQueryParams value() {
DataObjectQueryParams options = new DataObjectQueryParams();
return (DataObjectQueryParams) options.value();
}
public static DataObjectQueryParams value(
int from, int to) {
DataObjectQueryParams options = new DataObjectQueryParams();
return (DataObjectQueryParams) options.value(from,to);
}
}
}