Search in sources :

Example 1 with Request

use of org.ovirt.engine.api.model.Request 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 Request

use of org.ovirt.engine.api.model.Request in project ovirt-engine by oVirt.

the class GeneralMetadataBuilder method produceRequestHeaders.

private void produceRequestHeaders() {
    this.generalMetadata.setRequest(new Request());
    this.generalMetadata.getRequest().setHeaders(new Headers());
    injectSessionTtlHeader(this.generalMetadata.getRequest().getHeaders());
}
Also used : Headers(org.ovirt.engine.api.model.Headers) Request(org.ovirt.engine.api.model.Request)

Example 3 with Request

use of org.ovirt.engine.api.model.Request in project ovirt-engine by oVirt.

the class RsdlBuilder method addUrlParameter.

/**
 * Adds to a link the a URL parameter, creating all the intermediate objects if they don't exist.
 *
 * @param link the link where the parameters will be added
 * @param parameter the parameter to add
 */
private void addUrlParameter(DetailedLink link, Parameter parameter) {
    Request request = link.getRequest();
    if (request == null) {
        request = new Request();
        link.setRequest(request);
    }
    Url url = request.getUrl();
    if (url == null) {
        url = new Url();
        request.setUrl(url);
    }
    List<ParametersSet> parametersSets = url.getParametersSets();
    ParametersSet parametersSet;
    if (parametersSets.isEmpty()) {
        parametersSet = new ParametersSet();
        parametersSets.add(parametersSet);
    } else {
        parametersSet = parametersSets.get(0);
    }
    parametersSet.getParameters().add(parameter);
}
Also used : ParametersSet(org.ovirt.engine.api.model.ParametersSet) Request(org.ovirt.engine.api.model.Request) Url(org.ovirt.engine.api.model.Url)

Example 4 with Request

use of org.ovirt.engine.api.model.Request in project ovirt-engine by oVirt.

the class RsdlBuilder method addCommonActionParameters.

/**
 * Adds to a link the parameters that are common to all actions, like {@code async} and {@code grace_period.expiry}.
 * These parameters will be added to all the signatures that have a body of type {@code Action}.
 *
 * @param link the link where the parameters will be added
 */
private void addCommonActionParameters(DetailedLink link) {
    Request request = link.getRequest();
    if (request != null) {
        org.ovirt.engine.api.model.Body body = request.getBody();
        if (body != null) {
            String type = body.getType();
            if (ACTION.equals(type)) {
                List<ParametersSet> parametersSets = body.getParametersSets();
                for (ParametersSet parametersSet : parametersSets) {
                    List<Parameter> parameters = parametersSet.getParameters();
                    parameters.add(newGracePeriodParameter());
                    parameters.add(newAsyncActionParameter());
                }
            }
        }
    }
}
Also used : ParametersSet(org.ovirt.engine.api.model.ParametersSet) Request(org.ovirt.engine.api.model.Request) Parameter(org.ovirt.engine.api.model.Parameter)

Aggregations

Request (org.ovirt.engine.api.model.Request)4 ParametersSet (org.ovirt.engine.api.model.ParametersSet)2 Url (org.ovirt.engine.api.model.Url)2 DetailedLink (org.ovirt.engine.api.model.DetailedLink)1 Headers (org.ovirt.engine.api.model.Headers)1 LinkCapabilities (org.ovirt.engine.api.model.LinkCapabilities)1 Parameter (org.ovirt.engine.api.model.Parameter)1