
net.java.dev.vcc.spi.AbstractDatacenterResourceGroup Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of vcc-api Show documentation
Show all versions of vcc-api Show documentation
The API for control of virtual computers running on a virtual computer host
The newest version!
package net.java.dev.vcc.spi;
import net.java.dev.vcc.api.Computer;
import net.java.dev.vcc.api.ComputerTemplate;
import net.java.dev.vcc.api.DatacenterResourceGroup;
import net.java.dev.vcc.api.Host;
import net.java.dev.vcc.api.HostResourceGroup;
import net.java.dev.vcc.api.ManagedObjectId;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
/**
* The base class from which all Service Provider Implementations map a resource group from.
*/
public abstract class AbstractDatacenterResourceGroup
extends AbstractManagedObject
implements DatacenterResourceGroup {
protected AbstractDatacenterResourceGroup(ManagedObjectId resourceGroupManagedObjectId) {
super(resourceGroupManagedObjectId);
}
/**
* {@inheritDoc}
*/
public Set getComputerTemplates() {
return Collections.emptySet();
}
/**
* {@inheritDoc}
*/
public Set getHosts() {
return Collections.emptySet();
}
/**
* {@inheritDoc}
*/
public Set getDatacenterResourceGroups() {
return Collections.emptySet();
}
/**
* {@inheritDoc}
*/
public Set getAllComputers() {
Set result = new HashSet();
for (DatacenterResourceGroup group : getDatacenterResourceGroups()) {
result.addAll(group.getAllComputers());
}
for (Host host : getHosts()) {
result.addAll(host.getAllComputers());
}
return result;
}
/**
* {@inheritDoc}
*/
public Set getAllComputerTemplates() {
Set result = new HashSet(getComputerTemplates());
for (DatacenterResourceGroup group : getDatacenterResourceGroups()) {
result.addAll(group.getAllComputerTemplates());
}
for (Host host : getHosts()) {
result.addAll(host.getAllComputerTemplates());
}
return result;
}
/**
* {@inheritDoc}
*/
public Set getAllHosts() {
Set result = new HashSet(getHosts());
for (DatacenterResourceGroup group : getDatacenterResourceGroups()) {
result.addAll(group.getAllHosts());
}
return result;
}
/**
* {@inheritDoc}
*/
public Set getAllHostResourceGroups() {
Set result = new HashSet();
for (DatacenterResourceGroup group : getDatacenterResourceGroups()) {
result.addAll(group.getAllHostResourceGroups());
}
for (Host host : getHosts()) {
result.addAll(host.getAllHostResourceGroups());
}
return result;
}
/**
* {@inheritDoc}
*/
public Set getAllDatacenterResourceGroups() {
Set result = new HashSet(getDatacenterResourceGroups());
for (DatacenterResourceGroup group : getDatacenterResourceGroups()) {
result.addAll(group.getAllDatacenterResourceGroups());
}
return result;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy