From: <cl...@hy...> - 2007-12-20 03:23:26
|
Author: clee Date: 2007-12-19 19:23:21 -0800 (Wed, 19 Dec 2007) New Revision: 7333 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=7333 Modified: trunk/sql/events/Alert.hbm.xml trunk/src/org/hyperic/hq/authz/shared/PermissionManagerImpl.java trunk/src/org/hyperic/hq/events/server/session/Alert.java Log: [HHQ-1430] Turns out combining the formulas was not such an optimization Modified: trunk/sql/events/Alert.hbm.xml =================================================================== --- trunk/sql/events/Alert.hbm.xml 2007-12-20 02:14:32 UTC (rev 7332) +++ trunk/sql/events/Alert.hbm.xml 2007-12-20 03:23:21 UTC (rev 7333) @@ -42,8 +42,10 @@ <key on-delete="cascade" column="ALERT_ID"/> <one-to-many class="AlertConditionLog"/> </bag> - - <property name="ackable" formula="(select e.acknowledged_by is null from EAM_ESCALATION_STATE e where e.alert_id = id and e.alert_type = -559038737)"/> + + + <property name="stateId" formula="(select e.id from EAM_ESCALATION_STATE e where e.alert_id = id and e.alert_type = -559038737)"/> + <property name="ackedBy" formula="(select e.acknowledged_by from EAM_ESCALATION_STATE e where e.alert_id = id and e.alert_type = -559038737)"/> </class> </hibernate-mapping> Modified: trunk/src/org/hyperic/hq/authz/shared/PermissionManagerImpl.java =================================================================== --- trunk/src/org/hyperic/hq/authz/shared/PermissionManagerImpl.java 2007-12-20 02:14:32 UTC (rev 7332) +++ trunk/src/org/hyperic/hq/authz/shared/PermissionManagerImpl.java 2007-12-20 03:23:21 UTC (rev 7333) @@ -336,7 +336,6 @@ public String getAlertsHQL() { return "select a from Alert a " + "join a.alertDefinition d " + - "join d.resource r " + "where a.ctime between :begin and :end and " + "d.priority >= :priority "; } Modified: trunk/src/org/hyperic/hq/events/server/session/Alert.java =================================================================== --- trunk/src/org/hyperic/hq/events/server/session/Alert.java 2007-12-20 02:14:32 UTC (rev 7332) +++ trunk/src/org/hyperic/hq/events/server/session/Alert.java 2007-12-20 03:23:21 UTC (rev 7333) @@ -34,7 +34,6 @@ import org.hyperic.dao.DAOFactory; import org.hyperic.hibernate.PersistedObject; import org.hyperic.hq.authz.server.session.AuthzSubject; -import org.hyperic.hq.escalation.server.session.EscalationState; import org.hyperic.hq.escalation.server.session.PerformsEscalations; import org.hyperic.hq.events.AlertDefinitionInterface; import org.hyperic.hq.events.AlertInterface; @@ -51,8 +50,9 @@ private AlertDefinition _alertDefinition; private Collection _actionLog = new ArrayList(); private Collection _conditionLog = new ArrayList(); + private Long _stateId; + private Long _ackedBy; private AlertValue _alertVal; - private Boolean _ackable; protected Alert() { } @@ -161,12 +161,24 @@ _conditionLog.remove(acl); } - protected void setAckable(Boolean ackable) { - _ackable = ackable; + protected void setAckedBy(Long ackedBy) { + _ackedBy = ackedBy; } + protected Long getAckedBy() { + return _ackedBy; + } + + protected void setStateId(Long stateId) { + _stateId = stateId; + } + + protected Long getStateId() { + return _stateId; + } + public boolean isAckable() { - return _ackable != null && _ackable.booleanValue(); + return getStateId() != null && getAckedBy() == null; } /** |