cloudstack/server/src/com/cloud/template/TemplateAdapter.java

39 lines
1.2 KiB
Java

package com.cloud.template;
import com.cloud.api.commands.DeleteIsoCmd;
import com.cloud.api.commands.DeleteTemplateCmd;
import com.cloud.api.commands.RegisterIsoCmd;
import com.cloud.api.commands.RegisterTemplateCmd;
import com.cloud.exception.ResourceAllocationException;
import com.cloud.storage.VMTemplateVO;
import com.cloud.utils.component.Adapter;
public interface TemplateAdapter extends Adapter {
public static class TemplateAdapterType {
String _name;
public static final TemplateAdapterType Hypervisor = new TemplateAdapterType("HypervisorAdapter");
public static final TemplateAdapterType BareMetal = new TemplateAdapterType("BareMetalAdapter");
public TemplateAdapterType(String name) {
_name = name;
}
public String getName() {
return _name;
}
}
public TemplateProfile prepare(RegisterTemplateCmd cmd) throws ResourceAllocationException;
public TemplateProfile prepare(RegisterIsoCmd cmd) throws ResourceAllocationException;
public VMTemplateVO create(TemplateProfile profile);
public TemplateProfile prepareDelete(DeleteTemplateCmd cmd);
public TemplateProfile prepareDelete(DeleteIsoCmd cmd);
public boolean delete(TemplateProfile profile);
}