Ravi Nori has uploaded a new change for review. Change subject: engine : Remove EventSubscriptionParameter ......................................................................
engine : Remove EventSubscriptionParameter This patch remove the EventSubscriptionParameter class and uses the EventSubscriber and DomainName VdcParamerNAmes to store and retive values from the parameters map in VdcActionParameterBase Longer description using lines' length under 72 chars. With multiple paragraphs if necessary. Change-Id: I8e944568ac9395a141cfab3ef4d4304d1ef2d1af Bug-Url: https://bugzilla.redhat.com/?????? Signed-off-by: Ravi Nori <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddEventSubscriptionCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EventSubscriptionCommandBase.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveEventSubscriptionCommand.java D backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EventSubscriptionParametesBase.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/VdcParameter.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/users/UserEventNotifierListModel.java 6 files changed, 55 insertions(+), 65 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/17/20417/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddEventSubscriptionCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddEventSubscriptionCommand.java index cf41d51..b2e2660 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddEventSubscriptionCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddEventSubscriptionCommand.java @@ -3,17 +3,19 @@ import java.util.List; import org.apache.commons.lang.StringUtils; -import org.ovirt.engine.core.common.action.EventSubscriptionParametesBase; +import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.businessentities.DbUser; import org.ovirt.engine.core.common.businessentities.EventMap; import org.ovirt.engine.core.common.businessentities.EventNotificationMethod; import org.ovirt.engine.core.common.businessentities.event_subscriber; import org.ovirt.engine.core.common.errors.VdcBLLException; import org.ovirt.engine.core.common.errors.VdcBllMessages; +import org.ovirt.engine.core.common.utils.VdcParameter; +import org.ovirt.engine.core.common.utils.VdcParameterValue; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.dbbroker.DbFacade; -public class AddEventSubscriptionCommand<T extends EventSubscriptionParametesBase> extends +public class AddEventSubscriptionCommand<T extends VdcActionParametersBase> extends EventSubscriptionCommandBase<T> { public AddEventSubscriptionCommand(T parameters) { super(parameters); @@ -24,9 +26,9 @@ boolean retValue; // check if user is not already subscribed to this event with same // method and address - Guid subscriberId = getParameters().getEventSubscriber().getsubscriber_id(); - String eventName = getParameters().getEventSubscriber().getevent_up_name(); - int methodId = getParameters().getEventSubscriber().getmethod_id(); + Guid subscriberId = getEventSubscriber().getsubscriber_id(); + String eventName = getEventSubscriber().getevent_up_name(); + int methodId = getEventSubscriber().getmethod_id(); List<event_subscriber> subscriptions = DbFacade.getInstance() .getEventDao().getAllForSubscriber(subscriberId); if (IsAlreadySubscribed(subscriptions, subscriberId, eventName, methodId)) { @@ -40,7 +42,7 @@ // validate event List<EventMap> eventMap = DbFacade.getInstance().getEventDao().getEventMapByName(eventName); if (eventMap.size() > 0) { - String domain = getParameters().getDomain(); + String domain = getDomainName(); // Validate user DbUser user = DbFacade.getInstance().getDbUserDao().get(subscriberId); if (user == null) { @@ -52,14 +54,14 @@ domain, subscriberId ); - retValue = ValidateAdd(eventNotificationMethods, getParameters().getEventSubscriber(), + retValue = ValidateAdd(eventNotificationMethods, getEventSubscriber(), user); } catch (VdcBLLException vdcBllException) { addCanDoActionMessage(VdcBllMessages.USER_MUST_EXIST_IN_DIRECTORY); retValue = false; } } else { - retValue = ValidateAdd(eventNotificationMethods, getParameters().getEventSubscriber(), user); + retValue = ValidateAdd(eventNotificationMethods, getEventSubscriber(), user); } } else { addCanDoActionMessage(String.format("$eventName %1$s", eventName)); @@ -72,6 +74,11 @@ } } return retValue; + } + + public String getDomainName() { + VdcParameterValue paramValue = getParameters().getParameterValue(VdcParameter.DomainName); + return ((VdcParameterValue<String>) paramValue).getValue(); } /** @@ -104,10 +111,10 @@ @Override protected void executeCommand() { - if (getParameters().getEventSubscriber().gettag_name() == null) { - getParameters().getEventSubscriber().settag_name(""); + if (getEventSubscriber().gettag_name() == null) { + getEventSubscriber().settag_name(""); } - DbFacade.getInstance().getEventDao().subscribe(getParameters().getEventSubscriber()); + DbFacade.getInstance().getEventDao().subscribe(getEventSubscriber()); setSucceeded(true); } } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EventSubscriptionCommandBase.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EventSubscriptionCommandBase.java index 5dd2367..ef89a16 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EventSubscriptionCommandBase.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EventSubscriptionCommandBase.java @@ -5,16 +5,18 @@ import org.apache.commons.lang.StringUtils; import org.ovirt.engine.core.common.EventNotificationMethods; -import org.ovirt.engine.core.common.action.EventSubscriptionParametesBase; +import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.businessentities.DbUser; import org.ovirt.engine.core.common.businessentities.EventNotificationMethod; import org.ovirt.engine.core.common.businessentities.event_subscriber; import org.ovirt.engine.core.common.businessentities.tags; import org.ovirt.engine.core.common.errors.VdcBllMessages; +import org.ovirt.engine.core.common.utils.VdcParameter; +import org.ovirt.engine.core.common.utils.VdcParameterValue; import org.ovirt.engine.core.compat.Regex; import org.ovirt.engine.core.dal.dbbroker.DbFacade; -public abstract class EventSubscriptionCommandBase<T extends EventSubscriptionParametesBase> extends +public abstract class EventSubscriptionCommandBase<T extends VdcActionParametersBase> extends AdminOperationCommandBase<T> { protected EventSubscriptionCommandBase(T parameters) { super(parameters); @@ -25,11 +27,16 @@ if (jobProperties == null) { jobProperties = super.getJobMessageProperties(); } - jobProperties.put("address", getParameters().getEventSubscriber().getmethod_address()); - jobProperties.put("eventtype", getParameters().getEventSubscriber().getevent_up_name()); + jobProperties.put("address", getEventSubscriber().getmethod_address()); + jobProperties.put("eventtype", getEventSubscriber().getevent_up_name()); return jobProperties; } + public event_subscriber getEventSubscriber() { + VdcParameterValue paramValue = getParameters().getParameterValue(VdcParameter.EventSubscriber); + return ((VdcParameterValue<event_subscriber>) paramValue).getValue(); + } + /** * Validates the notification method. * diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveEventSubscriptionCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveEventSubscriptionCommand.java index ce147ad..41c31ec 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveEventSubscriptionCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveEventSubscriptionCommand.java @@ -2,14 +2,14 @@ import java.util.List; -import org.ovirt.engine.core.common.action.EventSubscriptionParametesBase; +import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.businessentities.DbUser; import org.ovirt.engine.core.common.businessentities.EventMap; import org.ovirt.engine.core.common.businessentities.EventNotificationMethod; import org.ovirt.engine.core.common.errors.VdcBllMessages; import org.ovirt.engine.core.dal.dbbroker.DbFacade; -public class RemoveEventSubscriptionCommand<T extends EventSubscriptionParametesBase> extends +public class RemoveEventSubscriptionCommand<T extends VdcActionParametersBase> extends EventSubscriptionCommandBase<T> { public RemoveEventSubscriptionCommand(T parameters) { super(parameters); @@ -20,22 +20,22 @@ boolean retValue; // get notification method List<EventNotificationMethod> event_notification_methods = (DbFacade.getInstance() - .getEventDao().getEventNotificationMethodsById(getParameters().getEventSubscriber().getmethod_id())); + .getEventDao().getEventNotificationMethodsById(getEventSubscriber().getmethod_id())); if (event_notification_methods.size() > 0) { // validate event List<EventMap> event_map = DbFacade.getInstance().getEventDao().getEventMapByName( - getParameters().getEventSubscriber().getevent_up_name()); + getEventSubscriber().getevent_up_name()); if (event_map.size() > 0) { // Validate user DbUser user = DbFacade.getInstance() .getDbUserDao() - .get(getParameters().getEventSubscriber().getsubscriber_id()); + .get(getEventSubscriber().getsubscriber_id()); if (user == null) { addCanDoActionMessage(VdcBllMessages.USER_MUST_EXIST_IN_DB); retValue = false; } else { - retValue = ValidateRemove(event_notification_methods, getParameters().getEventSubscriber(), user); + retValue = ValidateRemove(event_notification_methods, getEventSubscriber(), user); } } else { addCanDoActionMessage(VdcBllMessages.EN_UNSUPPORTED_NOTIFICATION_EVENT); @@ -50,7 +50,7 @@ @Override protected void executeCommand() { - DbFacade.getInstance().getEventDao().unsubscribe(getParameters().getEventSubscriber()); + DbFacade.getInstance().getEventDao().unsubscribe(getEventSubscriber()); setSucceeded(true); } } diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EventSubscriptionParametesBase.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EventSubscriptionParametesBase.java deleted file mode 100644 index 46dc959..0000000 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EventSubscriptionParametesBase.java +++ /dev/null @@ -1,38 +0,0 @@ -package org.ovirt.engine.core.common.action; - -import javax.validation.Valid; - -import org.ovirt.engine.core.common.businessentities.event_subscriber; - -public class EventSubscriptionParametesBase extends VdcActionParametersBase { - private static final long serialVersionUID = -6988075041053848616L; - - public EventSubscriptionParametesBase(event_subscriber event_subscriber, String domain) { - setEventSubscriber(event_subscriber); - setDomain(domain); - } - - @Valid - private event_subscriber privateEventSubscriber; - - public event_subscriber getEventSubscriber() { - return privateEventSubscriber; - } - - private void setEventSubscriber(event_subscriber value) { - privateEventSubscriber = value; - } - - private String privateDomain; - - public String getDomain() { - return privateDomain; - } - - private void setDomain(String value) { - privateDomain = value; - } - - public EventSubscriptionParametesBase() { - } -} diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/VdcParameter.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/VdcParameter.java index 0bbedd3..d5a0b2c 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/VdcParameter.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/VdcParameter.java @@ -1,6 +1,7 @@ package org.ovirt.engine.core.common.utils; import java.io.Serializable; +import org.ovirt.engine.core.common.businessentities.event_subscriber; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.compat.Version; @@ -8,6 +9,8 @@ public enum VdcParameter { ClusterId(Guid.class, new VdcParameterHandler<Guid>()), DataCenterId(Guid.class, new VdcParameterHandler<Guid>()), + DomainName(String.class, new VdcParameterHandler<String>()), + EventSubscriber(event_subscriber.class, new VdcParameterHandler<event_subscriber>()), RoleId(Guid.class, new VdcParameterHandler<Guid>()), StorageDomainId(Guid.class, new VdcParameterHandler<Guid>()), Version(Version.class, new VdcParameterHandler<Version>()); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/users/UserEventNotifierListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/users/UserEventNotifierListModel.java index 9753dc9..03b59c2 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/users/UserEventNotifierListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/users/UserEventNotifierListModel.java @@ -8,14 +8,15 @@ import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.EventNotificationEntity; import org.ovirt.engine.core.common.EventNotificationMethods; -import org.ovirt.engine.core.common.action.EventSubscriptionParametesBase; import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VdcReturnValueBase; import org.ovirt.engine.core.common.businessentities.DbUser; import org.ovirt.engine.core.common.businessentities.event_subscriber; import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.common.queries.InvalidParameterValueException; import org.ovirt.engine.core.common.queries.VdcQueryType; +import org.ovirt.engine.core.common.utils.VdcParameter; import org.ovirt.engine.core.compat.StringHelper; import org.ovirt.engine.ui.frontend.Frontend; import org.ovirt.engine.ui.uicommonweb.Linq; @@ -253,14 +254,14 @@ { for (event_subscriber a : existing) { - toRemoveList.add(new EventSubscriptionParametesBase(new event_subscriber(a.getevent_up_name(), + toRemoveList.add(getEventSubscriptionParameters(new event_subscriber(a.getevent_up_name(), EventNotificationMethods.EMAIL.getValue(), a.getmethod_address(), a.getsubscriber_id(), ""), "")); //$NON-NLS-1$ //$NON-NLS-2$ } for (SelectionTreeNodeModel a : selected) { - toAddList.add(new EventSubscriptionParametesBase(new event_subscriber(a.getTitle(), + toAddList.add(getEventSubscriptionParameters(new event_subscriber(a.getTitle(), EventNotificationMethods.EMAIL.getValue(), (String) model.getEmail().getEntity(), getEntity().getId(), ""), "")); //$NON-NLS-1$ //$NON-NLS-2$ @@ -270,7 +271,7 @@ { for (SelectionTreeNodeModel a : added) { - toAddList.add(new EventSubscriptionParametesBase(new event_subscriber(a.getTitle(), + toAddList.add(getEventSubscriptionParameters(new event_subscriber(a.getTitle(), EventNotificationMethods.EMAIL.getValue(), (String) model.getEmail().getEntity(), getEntity().getId(), ""), "")); //$NON-NLS-1$ //$NON-NLS-2$ @@ -278,7 +279,7 @@ for (event_subscriber a : removed) { - toRemoveList.add(new EventSubscriptionParametesBase(new event_subscriber(a.getevent_up_name(), + toRemoveList.add(getEventSubscriptionParameters(new event_subscriber(a.getevent_up_name(), EventNotificationMethods.EMAIL.getValue(), a.getmethod_address(), a.getsubscriber_id(), ""), "")); //$NON-NLS-1$ //$NON-NLS-2$ @@ -299,6 +300,16 @@ cancel(); } + private static VdcActionParametersBase getEventSubscriptionParameters(event_subscriber subscriber, String domain) { + VdcActionParametersBase params = new VdcActionParametersBase(); + try { + params.addParameter(VdcParameter.EventSubscriber, subscriber); + params.addParameter(VdcParameter.DomainName, domain); + } catch (InvalidParameterValueException ex) { + } + return params; + } + private final class EventSubscriptionFrontendActionAsyncCallback implements IFrontendActionAsyncCallback { private ArrayList<VdcActionParametersBase> toAddList; ArrayList<VdcActionParametersBase> toRemoveList; -- To view, visit http://gerrit.ovirt.org/20417 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8e944568ac9395a141cfab3ef4d4304d1ef2d1af Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
