Search in sources :

Example 1 with DetailedLink

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;
}
Also used : DetailedLink(org.ovirt.engine.api.model.DetailedLink) Request(org.ovirt.engine.api.model.Request) LinkCapabilities(org.ovirt.engine.api.model.LinkCapabilities) Url(org.ovirt.engine.api.model.Url)

Example 2 with DetailedLink

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);
}
Also used : DetailedLink(org.ovirt.engine.api.model.DetailedLink) BaseResources(org.ovirt.engine.api.model.BaseResources) Statistics(org.ovirt.engine.api.model.Statistics)

Example 3 with DetailedLink

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);
}
Also used : DetailedLink(org.ovirt.engine.api.model.DetailedLink)

Example 4 with DetailedLink

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;
}
Also used : DetailedLink(org.ovirt.engine.api.model.DetailedLink) SpecialObjects(org.ovirt.engine.api.model.SpecialObjects) Api(org.ovirt.engine.api.model.Api) Date(java.util.Date)

Example 5 with DetailedLink

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;
}
Also used : DetailedLink(org.ovirt.engine.api.model.DetailedLink) SpecialObjects(org.ovirt.engine.api.model.SpecialObjects) Api(org.ovirt.engine.api.model.Api) Date(java.util.Date)

Aggregations

DetailedLink (org.ovirt.engine.api.model.DetailedLink)9 Date (java.util.Date)2 Api (org.ovirt.engine.api.model.Api)2 SpecialObjects (org.ovirt.engine.api.model.SpecialObjects)2 HashMap (java.util.HashMap)1 LinkedList (java.util.LinkedList)1 BaseResources (org.ovirt.engine.api.model.BaseResources)1 DetailedLinks (org.ovirt.engine.api.model.DetailedLinks)1 LinkCapabilities (org.ovirt.engine.api.model.LinkCapabilities)1 Request (org.ovirt.engine.api.model.Request)1 Rsdl (org.ovirt.engine.api.model.Rsdl)1 Statistics (org.ovirt.engine.api.model.Statistics)1 Url (org.ovirt.engine.api.model.Url)1