org.ovirt.engine.sdk.decorators.VMSnapshots Maven / Gradle / Ivy
Show all versions of ovirt-engine-sdk-java Show documentation
//
// Copyright (c) 2012 Red Hat, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// *********************************************************************
// ********************* GENERATED CODE - DO NOT MODIFY ****************
// *********************************************************************
package org.ovirt.engine.sdk.decorators;
import java.io.IOException;
import java.util.List;
import java.util.UUID;
import org.apache.http.Header;
import org.apache.http.client.ClientProtocolException;
import org.ovirt.engine.sdk.common.CollectionDecorator;
import org.ovirt.engine.sdk.exceptions.ServerException;
import org.ovirt.engine.sdk.utils.CollectionUtils;
import org.ovirt.engine.sdk.utils.HttpHeaderBuilder;
import org.ovirt.engine.sdk.utils.HttpHeaderUtils;
import org.ovirt.engine.sdk.utils.UrlBuilder;
import org.ovirt.engine.sdk.utils.UrlBuilder;
import org.ovirt.engine.sdk.utils.UrlHelper;
import org.ovirt.engine.sdk.web.HttpProxyBroker;
import org.ovirt.engine.sdk.web.UrlParameterType;
import org.ovirt.engine.sdk.entities.Action;
/**
* VMSnapshots providing relation and functional services
*
to {@link org.ovirt.engine.sdk.entities.Snapshots }.
*/
@SuppressWarnings("unused")
public class VMSnapshots extends
CollectionDecorator {
private VM parent;
/**
* @param proxy HttpProxyBroker
* @param parent VM
*/
public VMSnapshots(HttpProxyBroker proxy, VM parent) {
super(proxy, "snapshots");
this.parent = parent;
}
/**
* Lists VMSnapshot objects.
*
* @return
* List of {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
@Override
public List list() throws ClientProtocolException,
ServerException, IOException {
String url = this.parent.getHref() + SLASH + getName();
return list(url, org.ovirt.engine.sdk.entities.Snapshots.class, VMSnapshot.class);
}
/**
* Fetches VMSnapshot object by id.
*
* @return
* {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
@Override
public VMSnapshot get(UUID id) throws ClientProtocolException,
ServerException, IOException {
String url = this.parent.getHref() + SLASH + getName() + SLASH + id.toString();
return getProxy().get(url, org.ovirt.engine.sdk.entities.Snapshot.class, VMSnapshot.class);
}
/**
* Fetches VMSnapshot object by id.
*
* @return
* {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
@Override
public VMSnapshot getById(String id) throws ClientProtocolException,
ServerException, IOException {
String url = this.parent.getHref() + SLASH + getName() + SLASH + id;
return getProxy().get(url, org.ovirt.engine.sdk.entities.Snapshot.class, VMSnapshot.class);
}
/**
* Adds Snapshot object.
*
* @param snapshot {@link org.ovirt.engine.sdk.entities.Snapshot}
*
* snapshot.description
* [snapshot.persist_memorystate]
* [snapshot.disks.disk]
*
*
*
* @return
* {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
public VMSnapshot add(org.ovirt.engine.sdk.entities.Snapshot snapshot) throws
ClientProtocolException, ServerException, IOException {
String url = this.parent.getHref() + SLASH + getName();
HttpHeaderBuilder headersBuilder = new HttpHeaderBuilder();
List headers = headersBuilder.build();
UrlBuilder urlBuilder = new UrlBuilder(url);
url = urlBuilder.build();
return getProxy().add(url, snapshot,
org.ovirt.engine.sdk.entities.Snapshot.class,
VMSnapshot.class, headers);
}
/**
* Adds Snapshot object.
*
* @param snapshot {@link org.ovirt.engine.sdk.entities.Snapshot}
*
* snapshot.description
* [snapshot.persist_memorystate]
* [snapshot.disks.disk]
*
*
* @param expect
*
* [201-created]
*
* @return
* {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
public VMSnapshot add(org.ovirt.engine.sdk.entities.Snapshot snapshot, String expect) throws
ClientProtocolException, ServerException, IOException {
String url = this.parent.getHref() + SLASH + getName();
HttpHeaderBuilder headersBuilder = new HttpHeaderBuilder();
if (expect != null) {
headersBuilder.add("Expect", expect);
}
List headers = headersBuilder.build();
UrlBuilder urlBuilder = new UrlBuilder(url);
url = urlBuilder.build();
return getProxy().add(url, snapshot,
org.ovirt.engine.sdk.entities.Snapshot.class,
VMSnapshot.class, headers);
}
/**
* Adds Snapshot object.
*
* @param snapshot {@link org.ovirt.engine.sdk.entities.Snapshot}
*
* snapshot.description
* [snapshot.persist_memorystate]
* [snapshot.disks.disk]
*
*
* @param expect
*
* [201-created]
*
* @param correlationId
*
* [any string]
*
* @return
* {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
public VMSnapshot add(org.ovirt.engine.sdk.entities.Snapshot snapshot, String expect, String correlationId) throws
ClientProtocolException, ServerException, IOException {
String url = this.parent.getHref() + SLASH + getName();
HttpHeaderBuilder headersBuilder = new HttpHeaderBuilder();
if (expect != null) {
headersBuilder.add("Expect", expect);
}
if (correlationId != null) {
headersBuilder.add("Correlation-Id", correlationId);
}
List headers = headersBuilder.build();
UrlBuilder urlBuilder = new UrlBuilder(url);
url = urlBuilder.build();
return getProxy().add(url, snapshot,
org.ovirt.engine.sdk.entities.Snapshot.class,
VMSnapshot.class, headers);
}
/**
* Lists VMSnapshot objects.
*
* @param max
*
* [max results]
*
*
* @return List of {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
public List list(Integer max) throws ClientProtocolException,
ServerException, IOException {
HttpHeaderBuilder headersBuilder = new HttpHeaderBuilder();
List headers = headersBuilder.build();
UrlBuilder urlBuilder = new UrlBuilder(this.parent.getHref() + SLASH + getName());
if (max != null) {
urlBuilder.add("max", max, UrlParameterType.MATRIX);
}
String url = urlBuilder.build();
return list(url, org.ovirt.engine.sdk.entities.Snapshots.class,
VMSnapshot.class, headers);
}
/**
* Lists VMSnapshot objects.
*
* @param max
*
* [max results]
*
* @param allContent
*
* [true|false]
*
*
* @return List of {@link VMSnapshot }
*
* @throws ClientProtocolException
* Signals that HTTP/S protocol error has occurred.
* @throws ServerException
* Signals that an oVirt api error has occurred.
* @throws IOException
* Signals that an I/O exception of some sort has occurred.
*/
public List list(Integer max, String allContent) throws ClientProtocolException,
ServerException, IOException {
HttpHeaderBuilder headersBuilder = new HttpHeaderBuilder();
if (allContent != null) {
headersBuilder.add("All-Content", allContent);
}
List headers = headersBuilder.build();
UrlBuilder urlBuilder = new UrlBuilder(this.parent.getHref() + SLASH + getName());
if (max != null) {
urlBuilder.add("max", max, UrlParameterType.MATRIX);
}
String url = urlBuilder.build();
return list(url, org.ovirt.engine.sdk.entities.Snapshots.class,
VMSnapshot.class, headers);
}
}