From: <pn...@hy...> - 2009-05-29 23:03:00
|
Author: pnguyen Date: 2009-05-29 16:02:31 -0700 (Fri, 29 May 2009) New Revision: 13252 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=13252 Modified: trunk/src/org/hyperic/hq/events/server/session/AlertDefinitionManagerEJBImpl.java Log: [HHQ-3155] Add additional null pointer checks Modified: trunk/src/org/hyperic/hq/events/server/session/AlertDefinitionManagerEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/events/server/session/AlertDefinitionManagerEJBImpl.java 2009-05-29 16:42:46 UTC (rev 13251) +++ trunk/src/org/hyperic/hq/events/server/session/AlertDefinitionManagerEJBImpl.java 2009-05-29 23:02:31 UTC (rev 13252) @@ -798,7 +798,12 @@ public AlertDefinitionValue getById(AuthzSubject subj, Integer id) throws PermissionException { - return getByIdAndCheck(subj, id).getAlertDefinitionValue(); + AlertDefinitionValue adv = null; + AlertDefinition ad = getByIdAndCheck(subj, id); + if (ad != null) { + adv = ad.getAlertDefinitionValue(); + } + return adv; } /** Find an alert definition @@ -811,7 +816,18 @@ { AlertDefinition ad = getAlertDefDAO().get(id); if (ad != null) { - canManageAlerts(subj, getAppdefEntityID(ad)); + if (ad.isDeleted()) { + ad = null; + } else { + Resource r = ad.getResource(); + if (r == null || r.isInAsyncDeleteState()) { + ad = null; + } + } + + if (ad != null) { + canManageAlerts(subj, getAppdefEntityID(ad)); + } } return ad; } |