Sergey Gotliv has uploaded a new change for review. Change subject: engine: Move execute method from the abstract AddStorageDomainCommand ......................................................................
engine: Move execute method from the abstract AddStorageDomainCommand Abstract class AddStorageDomainCommand is a parent of the AddSanStorageDomainCommand and AddFileStorageDomainCommand but its execute method is in use only by commands which inherit from AddFileStorageDomainCommand so this command is more approrpiate place to implement this method. Change-Id: I568d562950cb5e5f545330ee6e94ca663bbdd708 Signed-off-by: Sergey Gotliv <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddFileStorageDomainCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java 2 files changed, 41 insertions(+), 41 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/56/23156/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddFileStorageDomainCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddFileStorageDomainCommand.java index e367da7..a8c1cc0 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddFileStorageDomainCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddFileStorageDomainCommand.java @@ -1,11 +1,17 @@ package org.ovirt.engine.core.bll.storage; +import java.util.Arrays; import java.util.List; import org.ovirt.engine.core.common.action.StorageDomainManagementParameter; import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.StorageServerConnections; +import org.ovirt.engine.core.common.errors.VdcBllErrors; import org.ovirt.engine.core.common.errors.VdcBllMessages; +import org.ovirt.engine.core.common.errors.VdcFault; +import org.ovirt.engine.core.common.utils.Pair; +import org.ovirt.engine.core.common.vdscommands.StorageServerConnectionManagementVDSParameters; +import org.ovirt.engine.core.common.vdscommands.VDSCommandType; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.dbbroker.DbFacade; @@ -23,6 +29,41 @@ super(parameters); } + @Override + protected void executeCommand() { + initializeStorageDomain(); + addStorageDomainInDb(); + // check connection to storage + Pair<Boolean, Integer> connectReturnValue = connectStorage(); + if (!connectReturnValue.getFirst()) { + VdcFault fault = new VdcFault(); + fault.setError(VdcBllErrors.forValue(connectReturnValue.getSecond())); + getReturnValue().setFault(fault); + setSucceeded(false); + } + else if (addStorageDomainInIrs()) { + updateStorageDomainDynamicFromIrs(); + setSucceeded(true); + } + } + + protected Pair<Boolean, Integer> connectStorage() { + String connectionId = getStorageDomain().getStorage(); + StorageServerConnections connection = getStorageServerConnectionDAO().get(connectionId); + java.util.HashMap<String, String> result = (java.util.HashMap<String, String>) runVdsCommand( + VDSCommandType.ConnectStorageServer, + new StorageServerConnectionManagementVDSParameters(getParameters().getVdsId(), Guid.Empty, + connection.getstorage_type(), + new java.util.ArrayList<StorageServerConnections>(java.util.Arrays + .asList(new StorageServerConnections[] { connection })))) + .getReturnValue(); + return new Pair<Boolean, Integer>(StorageHelperDirector.getInstance() + .getItem(connection.getstorage_type()) + .isConnectSucceeded(result, Arrays.asList(connection)), + Integer.parseInt(result.values().iterator().next())); + + } + protected boolean checkStorageConnection(String storageDomainConnection) { List<StorageDomain> domains = null; StorageServerConnections connection = getStorageServerConnectionDAO().get(storageDomainConnection); diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java index 90c6777..aacd68d 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java @@ -2,7 +2,6 @@ import static org.ovirt.engine.core.bll.MultiLevelAdministrationHandler.SYSTEM_OBJECT_ID; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Set; @@ -17,16 +16,11 @@ import org.ovirt.engine.core.common.businessentities.StorageDomainType; import org.ovirt.engine.core.common.businessentities.StorageFormatType; import org.ovirt.engine.core.common.businessentities.StoragePool; -import org.ovirt.engine.core.common.businessentities.StorageServerConnections; import org.ovirt.engine.core.common.businessentities.StorageType; -import org.ovirt.engine.core.common.errors.VdcBllErrors; import org.ovirt.engine.core.common.errors.VdcBllMessages; -import org.ovirt.engine.core.common.errors.VdcFault; -import org.ovirt.engine.core.common.utils.Pair; import org.ovirt.engine.core.common.validation.group.CreateEntity; import org.ovirt.engine.core.common.vdscommands.CreateStorageDomainVDSCommandParameters; import org.ovirt.engine.core.common.vdscommands.GetStorageDomainStatsVDSCommandParameters; -import org.ovirt.engine.core.common.vdscommands.StorageServerConnectionManagementVDSParameters; import org.ovirt.engine.core.common.vdscommands.VDSCommandType; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.dbbroker.DbFacade; @@ -99,41 +93,6 @@ return null; } }); - } - - @Override - protected void executeCommand() { - initializeStorageDomain(); - addStorageDomainInDb(); - // check connection to storage - Pair<Boolean, Integer> connectReturnValue = connectStorage(); - if (!connectReturnValue.getFirst()) { - VdcFault fault = new VdcFault(); - fault.setError(VdcBllErrors.forValue(connectReturnValue.getSecond())); - getReturnValue().setFault(fault); - setSucceeded(false); - } - else if (addStorageDomainInIrs()) { - updateStorageDomainDynamicFromIrs(); - setSucceeded(true); - } - } - - protected Pair<Boolean, Integer> connectStorage() { - String connectionId = getStorageDomain().getStorage(); - StorageServerConnections connection = getStorageServerConnectionDAO().get(connectionId); - java.util.HashMap<String, String> result = (java.util.HashMap<String, String>) runVdsCommand( - VDSCommandType.ConnectStorageServer, - new StorageServerConnectionManagementVDSParameters(getParameters().getVdsId(), Guid.Empty, - connection.getstorage_type(), - new java.util.ArrayList<StorageServerConnections>(java.util.Arrays - .asList(new StorageServerConnections[] { connection })))) - .getReturnValue(); - return new Pair<Boolean, Integer>(StorageHelperDirector.getInstance() - .getItem(connection.getstorage_type()) - .isConnectSucceeded(result, Arrays.asList(connection)), - Integer.parseInt(result.values().iterator().next())); - } @Override -- To view, visit http://gerrit.ovirt.org/23156 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I568d562950cb5e5f545330ee6e94ca663bbdd708 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Sergey Gotliv <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
