From: <jt...@hy...> - 2007-03-21 23:47:51
|
Author: jtravis Date: 2007-03-21 15:47:43 -0800 (Wed, 21 Mar 2007) New Revision: 3806 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=3806 Modified: trunk/src/org/hyperic/hq/ui/rendit/rendit_sys/org/hyperic/hq/rendit/BaseController.groovy Log: Add getUser(). Cleanup bug where no arguments would result in an exception Modified: trunk/src/org/hyperic/hq/ui/rendit/rendit_sys/org/hyperic/hq/rendit/BaseController.groovy =================================================================== --- trunk/src/org/hyperic/hq/ui/rendit/rendit_sys/org/hyperic/hq/rendit/BaseController.groovy 2007-03-21 23:47:00 UTC (rev 3805) +++ trunk/src/org/hyperic/hq/ui/rendit/rendit_sys/org/hyperic/hq/rendit/BaseController.groovy 2007-03-21 23:47:43 UTC (rev 3806) @@ -5,16 +5,21 @@ import org.apache.commons.logging.Log import org.apache.commons.logging.LogFactory +import org.hyperic.hq.authz.server.session.AuthzSubject +import org.hyperic.hq.ui.util.ContextUtils +import org.hyperic.hq.ui.util.RequestUtils + import groovy.text.SimpleTemplateEngine import java.io.File public abstract class BaseController extends Expando { - Log log = LogFactory.getLog(this.getClass()) - String action - File pluginDir - def invokeArgs + Log log = LogFactory.getLog(this.getClass()) + String action + File pluginDir + def invokeArgs + private AuthzSubject user private void setAction(String action) { this.action = action @@ -29,6 +34,19 @@ } /** + * Retreives the currently logged-in user + */ + protected AuthzSubject getUser() { + if (this.user != null) + return this.user + + def sessId = RequestUtils.getSessionId(invokeArgs.request) + def ctx = invokeArgs.request.session.servletContext + + this.user = ContextUtils.getAuthzBoss(ctx).getCurrentSubject(sessId) + } + + /** * Render a .gsp. * * This method takes a map of arguments. Valid arguments include: @@ -38,6 +56,7 @@ * rendering */ protected def render(args) { + args = (args == null) ? [:] : args def gspArgs = args.remove("args") def gspFile = args.remove("file") def useAction |