package org.ovirt.engine.core.bll.storage; import org.ovirt.engine.core.common.businessentities.VDS; import org.ovirt.engine.core.common.businessentities.storage_domains; import org.ovirt.engine.core.common.businessentities.storage_pool; import org.ovirt.engine.core.utils.ISingleAsyncOperation; import org.ovirt.engine.core.utils.ISingleAsyncOperationFactory; public abstract class ActivateDeactivateSingleAsyncOperationFactory implements ISingleAsyncOperationFactory { private java.util.ArrayList<VDS> _vdss; private storage_domains _storageDomain; private storage_pool _storagePool; protected java.util.ArrayList<VDS> getVdss() { return _vdss; } protected storage_domains getStorageDomain() { return _storageDomain; } protected storage_pool getStoragePool() { return _storagePool; } public void Initialize(java.util.ArrayList parameters) { if (!(parameters.get(0) instanceof java.util.ArrayList)) { throw new InvalidOperationException(); } java.util.ArrayList l = (java.util.ArrayList) parameters.get(0); if (!l.isEmpty() && !(l.get(0) instanceof VDS)) { throw new InvalidOperationException(); } _vdss = (java.util.ArrayList<VDS>) parameters.get(0); if (parameters.get(1) != null && !(parameters.get(1) instanceof storage_domains)) { throw new InvalidOperationException(); } _storageDomain = (storage_domains) parameters.get(1); if (!(parameters.get(2) instanceof storage_pool)) { throw new InvalidOperationException(); } _storagePool = (storage_pool) parameters.get(2); } public abstract ISingleAsyncOperation CreateSingleAsyncOperation(); }