package com.kedzie.vbox.api; import java.util.HashMap; import java.util.Map; import android.os.Parcel; import android.os.Parcelable; import com.kedzie.vbox.api.jaxb.StorageBus; import com.kedzie.vbox.api.jaxb.StorageControllerType; import com.kedzie.vbox.soap.Asyncronous; import com.kedzie.vbox.soap.KSOAP; import com.kedzie.vbox.soap.VBoxSvc; @KSOAP public interface IStorageController extends IManagedObjectRef, Parcelable { public static final String BUNDLE = "controller"; static final ClassLoader LOADER = IMachine.class.getClassLoader(); public static final Parcelable.Creator<IStorageController> CREATOR = new Parcelable.Creator<IStorageController>() { public IStorageController createFromParcel(Parcel in) { VBoxSvc vmgr = in.readParcelable(LOADER); String id = in.readString(); Map<String, Object> cache = new HashMap<String, Object>(); in.readMap(cache, LOADER); return (IStorageController) vmgr.getProxy(IStorageController.class, id, cache); } public IStorageController[] newArray(int size) { return new IStorageController[size]; } }; @KSOAP(cacheable=true) public String getName(); @KSOAP(cacheable=true) public Integer getMaxDevicesPerPortCount(); @KSOAP(cacheable=true) public Integer getMinPortCount(); @KSOAP(cacheable=true) public Integer getMaxPortCount(); @KSOAP(cacheable=true) public StorageBus getBus(); @KSOAP(cacheable=true) public Integer getInstance(); @Asyncronous public void setInstance(@KSOAP(type="unsignedInt", value="instance") int instance); @KSOAP(cacheable=true) public Integer getPortCount(); @Asyncronous public void setPortCount(@KSOAP(type="unsignedInt", value="portCount") int portCount); @KSOAP(cacheable=true) public StorageControllerType getControllerType(); @Asyncronous public void setControllerType(@KSOAP("controllerType") StorageControllerType controllerType); @KSOAP(cacheable=true) public Boolean getUseHostIOCache(); @Asyncronous public void setUseHostIOCache(@KSOAP("useHostIOCache") boolean useHostIOCache); @KSOAP(cacheable=true) public Boolean getBootable(); }