org.ovirt.engine.sdk.decorators.VMDiskPermissions 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;
/**
* VMDiskPermissions providing relation and functional services
*
to {@link org.ovirt.engine.sdk.entities.Permissions }.
*/
@SuppressWarnings("unused")
public class VMDiskPermissions extends
CollectionDecorator {
private VMDisk parent;
/**
* @param proxy HttpProxyBroker
* @param parent VMDisk
*/
public VMDiskPermissions(HttpProxyBroker proxy, VMDisk parent) {
super(proxy, "permissions");
this.parent = parent;
}
/**
* Lists VMDiskPermission objects.
*
* @return
* List of {@link VMDiskPermission }
*
* @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.Permissions.class, VMDiskPermission.class);
}
/**
* Fetches VMDiskPermission object by id.
*
* @return
* {@link VMDiskPermission }
*
* @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 VMDiskPermission 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.Permission.class, VMDiskPermission.class);
}
/**
* Fetches VMDiskPermission object by id.
*
* @return
* {@link VMDiskPermission }
*
* @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 VMDiskPermission 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.Permission.class, VMDiskPermission.class);
}
/**
* Adds Permission object.
*
* @param permission {@link org.ovirt.engine.sdk.entities.Permission}
*
* @return
* {@link VMDiskPermission }
*
* @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 VMDiskPermission add(org.ovirt.engine.sdk.entities.Permission permission) 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, permission,
org.ovirt.engine.sdk.entities.Permission.class,
VMDiskPermission.class, headers);
}
/**
* Lists VMDiskPermission objects.
*
* @param max
*
* [max results]
*
*
* @return List of {@link VMDiskPermission }
*
* @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.Permissions.class,
VMDiskPermission.class, headers);
}
}