com.dottydingo.hyperion.client.builder.GetRequestBuilder Maven / Gradle / Ivy
package com.dottydingo.hyperion.client.builder;
import com.dottydingo.hyperion.api.ApiObject;
import com.dottydingo.hyperion.api.EntityResponse;
import com.dottydingo.hyperion.client.*;
import java.io.Serializable;
/**
*/
public class GetRequestBuilder,ID extends Serializable> extends RequestBuilder
{
private ID[] ids;
public GetRequestBuilder(int version, Class objectType, String entityName, ID[] ids)
{
super(version, objectType, entityName);
this.ids = ids;
}
public GetRequestBuilder returnFields(String... fields)
{
setParameter("fields",join(fields));
return this;
}
@Override
public GetRequestBuilder addParameter(String name, String value)
{
super.addParameter(name, value);
return this;
}
@Override
public GetRequestBuilder setParameter(String name, String value)
{
super.setParameter(name, value);
return this;
}
@Override
public GetRequestBuilder addHeader(String name, String value)
{
super.addHeader(name, value);
return this;
}
@Override
public GetRequestBuilder setHeader(String name, String value)
{
super.setHeader(name, value);
return this;
}
@Override
public GetRequestBuilder withHeaderFactory(HeaderFactory headerFactory)
{
super.withHeaderFactory(headerFactory);
return this;
}
@Override
public GetRequestBuilder withParameterFactory(ParameterFactory parameterFactory)
{
super.withParameterFactory(parameterFactory);
return this;
}
@Override
public Request build()
{
Request request = super.build();
request.setPath(join(ids));
request.setRequestMethod(RequestMethod.GET);
return request;
}
public EntityResponse execute(HyperionClient client)
{
return client.get(build());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy