23 Controller MetaClass Methods - Reference Documentation
Authors: Burt Beckwith, Beverley Talbott
Version: 2.0.0
23 Controller MetaClass Methods
The plugin registers some convenience methods into all controllers in your application. All are accessor methods, so they can be called as methods or properties. They include:isLoggedIn
Returnstrue if there is an authenticated user.class MyController { def someAction() {
if (isLoggedIn()) {
…
} ... if (!isLoggedIn()) {
…
} // or if (loggedIn) {
…
} if (!loggedIn) {
…
}
}
}getPrincipal
Retrieves the current authenticated user's Principal (aGrailsUser instance unless you've customized this) or null if not authenticated.class MyController { def someAction() {
if (isLoggedIn()) {
String username = getPrincipal().username
…
} // or if (isLoggedIn()) {
String username = principal.username
…
}
}
}getAuthenticatedUser
Loads the user domain class instance from the database that corresponds to the currently authenticated user, ornull if not authenticated. This is the equivalent of adding a dependency injection for springSecurityService and calling PersonDomainClassName.get(springSecurityService.principal.id) (the typical way that this is often done).class MyController { def someAction() {
if (isLoggedIn()) {
String email = getAuthenticatedUser().email
…
} // or if (isLoggedIn()) {
String email = authenticatedUser.email
…
}
}
}