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

Reply via email to