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