Yair Zaslavsky has uploaded a new change for review. Change subject: core: Propagate ldap query error properly to UI ......................................................................
core: Propagate ldap query error properly to UI This patch uses the fact DirectorySearcher holds the exception that occured (if not a RuntimeException, but a checked exception) as a field. The error is already properly propagated to UI in case of RuntimeException. Change-Id: If06e251ec31f208dd0e25084d5aaa37625d299cc Bug-Url: https://bugzilla.redhat.com/903786/ Signed-off-by: Yair Zaslavsky <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/adbroker/LdapBrokerCommandBase.java 1 file changed, 9 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/56/15556/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/adbroker/LdapBrokerCommandBase.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/adbroker/LdapBrokerCommandBase.java index 3797e7c..89bcc96 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/adbroker/LdapBrokerCommandBase.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/adbroker/LdapBrokerCommandBase.java @@ -6,10 +6,9 @@ import java.util.Map; import org.apache.commons.lang.StringUtils; - import org.ovirt.engine.core.bll.session.SessionDataContainer; -import org.ovirt.engine.core.common.businessentities.LdapUser; import org.ovirt.engine.core.common.businessentities.LdapGroup; +import org.ovirt.engine.core.common.businessentities.LdapUser; import org.ovirt.engine.core.common.interfaces.IVdcUser; import org.ovirt.engine.core.dal.VdcBllMessages; import org.ovirt.engine.core.dal.dbbroker.DbFacade; @@ -61,6 +60,7 @@ @Override public LdapReturnValueBase execute() { + boolean exceptionOccured = false; try { log.debugFormat("Running LDAP command: {0}", getClass().getName()); String loginNameForKerberos = @@ -68,10 +68,16 @@ LdapCredentials ldapCredentials = new LdapCredentials(loginNameForKerberos, getPassword()); DirectorySearcher directorySearcher = new DirectorySearcher(ldapCredentials); executeQuery(directorySearcher); + exceptionOccured = directorySearcher.getException() != null; } catch (RuntimeException e) { log.error(String.format("Failed to run command %s. Domain is %s. User is %s.", getClass().getSimpleName(), getDomain(), getLoginName())); - _ldapReturnValue.setExceptionString(VdcBllMessages.FAILED_TO_RUN_LDAP_QUERY.name()); + } + finally { + if (exceptionOccured) { + _ldapReturnValue.setExceptionString(VdcBllMessages.FAILED_TO_RUN_LDAP_QUERY.name()); + _ldapReturnValue.setSucceeded(false); + } } return _ldapReturnValue; } -- To view, visit http://gerrit.ovirt.org/15556 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: If06e251ec31f208dd0e25084d5aaa37625d299cc Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yair Zaslavsky <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
