All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ovirt.engine.sdk4.services.VnicProfileService Maven / Gradle / Ivy

There is a newer version: 4.5.1
Show newest version
/*
Copyright (c) 2015 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.
*/

package org.ovirt.engine.sdk4.services;

import java.io.IOException;
import org.ovirt.engine.sdk4.Request;
import org.ovirt.engine.sdk4.Response;
import org.ovirt.engine.sdk4.Service;
import org.ovirt.engine.sdk4.builders.VnicProfileBuilder;
import org.ovirt.engine.sdk4.types.VnicProfile;

/**
 * Since 4.0 it is possible to have a customized network filter to each VNIC profile.
 * Please note that there is a default network filter to each VNIC profile.
 * For more details of how the default network filter is calculated please refer to
 * the documentation in <>.
 * 
 * The basic POST command of adding a new VNIC profile is as follows:
 * 
 * [source]
 * ----
 * http://{engine_ip_address}:8080/ovirt-engine/api/networks/{network_id}/vnicprofiles
 * ----
 * 
 * The output of creating a new VNIC profile depends in the  body  arguments that were given.
 * In case no network filter was given, the default network filter will be configured. For example:
 * 
 * [source,xml]
 * ----
 * 
 *   use_default_network_filter
 *   
 * 
 * ----
 * 
 * In case an empty network filter was given, no network filter will be configured for the specific VNIC profile
 * regardless of the VNIC profile's default network filter. For example:
 * 
 * [source,xml]
 * ----
 * 
 *   no_network_filter
 *   
 *   
 * 
 * ----
 * 
 * In case that a specific valid network filter id was given, the VNIC profile will be configured with the given
 * network filter regardless of the VNIC profiles's default network filter. For example:
 * 
 * [source,xml]
 * ----
 * 
 *   user_choice_network_filter
 *   
 *   
 * 
 * ----
 */
public interface VnicProfileService extends Service {
    public interface GetRequest extends Request {
    }
    
    public interface GetResponse extends Response {
        VnicProfile profile();
    }
    
    GetRequest get();
    
    public interface RemoveRequest extends Request {
        /**
         * Indicates if the remove should be performed asynchronously.
         */
        RemoveRequest async(Boolean async);
    }
    
    public interface RemoveResponse extends Response {
    }
    
    RemoveRequest remove();
    
    public interface UpdateRequest extends Request {
        /**
         * Indicates if the update should be performed asynchronously.
         */
        UpdateRequest async(Boolean async);
        UpdateRequest profile(VnicProfile profile);
        UpdateRequest profile(VnicProfileBuilder profile);
    }
    
    public interface UpdateResponse extends Response {
        VnicProfile profile();
    }
    
    UpdateRequest update();
    
    AssignedPermissionsService permissionsService();
    /**
     * Service locator method, returns individual service on which the URI is dispatched.
     */
    Service service(String path);
}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy