use of org.ovirt.engine.api.model.DetailedLink in project ovirt-engine by oVirt.
the class LinkCreator method createLink.
/**
* Create a search link with the given parameters
*
* @param url the url
* @param rel the link to add
* @param flags flags for this link, e.g: 'searchable'
* @param params url parameters
* @return the link the was created
*/
public static DetailedLink createLink(String url, String rel, LinkFlags flags, ParametersSet params) {
DetailedLink link = new DetailedLink();
link.setRel(rel);
link.setHref(combine(url, rel));
if (flags == LinkFlags.SEARCHABLE) {
LinkCapabilities capabilities = new LinkCapabilities();
capabilities.setSearchable(true);
link.setLinkCapabilities(capabilities);
}
link.setRequest(new Request());
link.getRequest().setUrl(new Url());
link.getRequest().getUrl().getParametersSets().add(params);
return link;
}
use of org.ovirt.engine.api.model.DetailedLink in project ovirt-engine by oVirt.
the class RsdlBuilder method handleGet.
private void handleGet(String prefix, Collection<DetailedLink> results, Class<?> returnType) {
String returnTypeStr = getReturnTypeStr(returnType);
DetailedLink link = new RsdlBuilder.LinkBuilder().url(prefix).rel(GET).responseType(returnTypeStr).httpMethod(HttpMethod.GET).build();
if (BaseResources.class.isAssignableFrom(returnType) && returnType != Statistics.class) {
addMaxMatrixParameter(link);
}
results.add(link);
}
use of org.ovirt.engine.api.model.DetailedLink in project ovirt-engine by oVirt.
the class RsdlBuilder method handlePut.
private void handlePut(String prefix, Collection<DetailedLink> results, Class<?> returnType) {
String returnTypeStr = getReturnTypeStr(returnType);
DetailedLink link = new RsdlBuilder.LinkBuilder().url(prefix).rel(UPDATE).requestParameter(returnTypeStr).responseType(returnTypeStr).httpMethod(HttpMethod.PUT).build();
addAsyncMatrixParameter(link);
results.add(link);
}
use of org.ovirt.engine.api.model.DetailedLink in project ovirt-engine by oVirt.
the class BackendApiResource method getGlusterApi.
private Api getGlusterApi() {
Api api = new Api();
api.setTime(DateMapper.map(new Date(), null));
for (DetailedLink detailedLink : getGlusterLinks()) {
// add thin link
api.getLinks().add(LinkCreator.createLink(detailedLink.getHref(), detailedLink.getRel()));
// when required - add extra link for search
if (detailedLink.isSetLinkCapabilities() && detailedLink.getLinkCapabilities().isSetSearchable() && detailedLink.getLinkCapabilities().isSearchable()) {
api.getLinks().add(LinkCreator.createLink(detailedLink.getHref(), detailedLink.getRel(), detailedLink.getRequest().getUrl().getParametersSets()));
}
// add special links
SpecialObjects specialObjects = new SpecialObjects();
specialObjects.setRootTag(createRootTag());
api.setSpecialObjects(specialObjects);
}
return api;
}
use of org.ovirt.engine.api.model.DetailedLink in project ovirt-engine by oVirt.
the class BackendApiResource method getApi.
private Api getApi() {
Api api = new Api();
api.setTime(DateMapper.map(new Date(), null));
for (DetailedLink detailedLink : getLinks()) {
// add thin link
api.getLinks().add(LinkCreator.createLink(detailedLink.getHref(), detailedLink.getRel()));
// when required - add extra link for search
if (detailedLink.isSetLinkCapabilities() && detailedLink.getLinkCapabilities().isSetSearchable() && detailedLink.getLinkCapabilities().isSearchable()) {
api.getLinks().add(LinkCreator.createLink(detailedLink.getHref(), detailedLink.getRel(), detailedLink.getRequest().getUrl().getParametersSets()));
}
// add special links
SpecialObjects specialObjects = new SpecialObjects();
specialObjects.setBlankTemplate(createBlankTemplate());
specialObjects.setRootTag(createRootTag());
api.setSpecialObjects(specialObjects);
}
return api;
}
Aggregations