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

net.java.dev.vcc.api.ManagedObject Maven / Gradle / Ivy

Go to download

The API for control of virtual computers running on a virtual computer host

The newest version!
package net.java.dev.vcc.api;

import java.util.Set;

/**
 * Represents an object in a {@link net.java.dev.vcc.api.Datacenter}
 */
public interface ManagedObject> {

    ManagedObjectId getId();

    /**
     * Returns the types of {@link Command} that are supported on this Managed Object.
     *
     * @return the types of {@link Command} that are supported on this Managed Object.
     */
    Set> getCommands();

    /**
     * Executes a command against this managed object.
     *
     * @param command the command to execute.
     * @param      the type of this command.
     *
     * @return the command parameter (to support method chaining).
     */
     T execute(T command);

    /**
     * Gets the name of this managed object.
     *
     * @return the name of this managed object.
     */
    String getName();

    /**
     * Gets the description of this managed object or {@code null} if descriptions are not supported.
     *
     * @return the description of this managed object or {@code null} if descriptions are not supported.
     */
    String getDescription();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy