
com.github.davidmoten.odata.client.EntityRequest Maven / Gradle / Ivy
package com.github.davidmoten.odata.client;
import com.github.davidmoten.odata.client.internal.RequestHelper;
public abstract class EntityRequest {
private final Class cls;
protected final ContextPath contextPath;
private final SchemaInfo schemaInfo;
public EntityRequest(Class cls, ContextPath contextPath, SchemaInfo schemaInfo) {
this.cls = cls;
this.contextPath = contextPath;
this.schemaInfo = schemaInfo;
}
T get(EntityRequestOptions options) {
return RequestHelper.get(contextPath, cls, options, schemaInfo);
}
void delete(EntityRequestOptions options) {
RequestHelper.delete(contextPath, options);
}
T patch(EntityRequestOptions options, T entity) {
return RequestHelper.patch(entity, contextPath, options);
}
T put(EntityRequestOptions options, T entity) {
return RequestHelper.put(entity, contextPath, options);
}
public T get() {
return new EntityRequestOptionsBuilder(this).get();
}
public void delete() {
new EntityRequestOptionsBuilder(this).delete();
}
public T patch(T entity) {
return new EntityRequestOptionsBuilder(this).patch(entity);
}
public T put(T entity) {
return new EntityRequestOptionsBuilder(this).put(entity);
}
public EntityRequestOptionsBuilder requestHeader(String key, String value) {
return new EntityRequestOptionsBuilder(this).requestHeader(key, value);
}
public EntityRequestOptionsBuilder select(String clause) {
return new EntityRequestOptionsBuilder(this).select(clause);
}
public EntityRequestOptionsBuilder expand(String clause) {
return new EntityRequestOptionsBuilder(this).expand(clause);
}
public EntityRequestOptionsBuilder metadataFull() {
return new EntityRequestOptionsBuilder(this).metadataFull();
}
public EntityRequestOptionsBuilder metadataMinimal() {
return new EntityRequestOptionsBuilder(this).metadataMinimal();
}
public EntityRequestOptionsBuilder metadataNone() {
return new EntityRequestOptionsBuilder(this).metadataNone();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy