From: <sc...@hy...> - 2010-05-25 23:19:40
|
Author: scottmf Date: 2010-05-25 16:19:32 -0700 (Tue, 25 May 2010) New Revision: 14621 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14621 Modified: trunk/src/org/hyperic/hq/authz/server/session/ResourceEdgeDAO.java trunk/src/org/hyperic/hq/authz/server/session/ResourceManagerEJBImpl.java Log: [HPD-477] added getPlatformCountByContainmentRelation() Modified: trunk/src/org/hyperic/hq/authz/server/session/ResourceEdgeDAO.java =================================================================== --- trunk/src/org/hyperic/hq/authz/server/session/ResourceEdgeDAO.java 2010-05-25 23:18:22 UTC (rev 14620) +++ trunk/src/org/hyperic/hq/authz/server/session/ResourceEdgeDAO.java 2010-05-25 23:19:32 UTC (rev 14621) @@ -295,4 +295,17 @@ return results.size() == 1; } + + public int getPlatformCountByContainmentRelation() { + String sql = "select count(distinct r.id) from Resource r " + + "JOIN r.resourceType t " + + "JOIN r.fromEdges e " + + "WHERE r.resourceType.id = :authzPlatform " + + "AND e.relation = :relationId"; + + return ((Integer) getSession().createQuery(sql) + .setInteger("authzPlatform", AuthzConstants.authzPlatform.intValue()) + .setInteger("relationId", AuthzConstants.RELATION_CONTAINMENT_ID.intValue()) + .uniqueResult()).intValue(); + } } Modified: trunk/src/org/hyperic/hq/authz/server/session/ResourceManagerEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/authz/server/session/ResourceManagerEJBImpl.java 2010-05-25 23:18:22 UTC (rev 14620) +++ trunk/src/org/hyperic/hq/authz/server/session/ResourceManagerEJBImpl.java 2010-05-25 23:19:32 UTC (rev 14621) @@ -1116,6 +1116,16 @@ } ZeventManager.getInstance().enqueueEventsAfterCommit(events); } + + /** + * @return returns the platform count of all distinct authzPlatforms in the + * containment relation from the edge table. + * @see {@link AuthzConstants.RELATION_CONTAINMENT_ID} + * @ejb:interface-method + */ + public int getPlatformCountByContainmentRelation() { + return getResourceEdgeDAO().getPlatformCountByContainmentRelation(); + } public static ResourceManagerLocal getOne() { try { |