You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2007/06/25 16:38:29 UTC
svn commit: r550517 -
/lenya/trunk/src/modules-core/acusecases/java/src/org/apache/lenya/cms/ac/usecases/AccessControlUsecase.java
Author: andreas
Date: Mon Jun 25 07:38:25 2007
New Revision: 550517
URL: http://svn.apache.org/viewvc?view=rev&rev=550517
Log:
AccessControlUsecase: throw reasonable exception instead of NPE if access controller could not be resolved
Modified:
lenya/trunk/src/modules-core/acusecases/java/src/org/apache/lenya/cms/ac/usecases/AccessControlUsecase.java
Modified: lenya/trunk/src/modules-core/acusecases/java/src/org/apache/lenya/cms/ac/usecases/AccessControlUsecase.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/acusecases/java/src/org/apache/lenya/cms/ac/usecases/AccessControlUsecase.java?view=diff&rev=550517&r1=550516&r2=550517
==============================================================================
--- lenya/trunk/src/modules-core/acusecases/java/src/org/apache/lenya/cms/ac/usecases/AccessControlUsecase.java (original)
+++ lenya/trunk/src/modules-core/acusecases/java/src/org/apache/lenya/cms/ac/usecases/AccessControlUsecase.java Mon Jun 25 07:38:25 2007
@@ -48,8 +48,8 @@
private AccessController accessController;
/**
- * Initializes the accreditable managers. FIXME: This method resolves the AccessController, it
- * has to be released after it is used!
+ * Initializes the accreditable managers. FIXME: This method resolves the
+ * AccessController, it has to be released after it is used!
*/
protected void initializeAccessController() {
super.doInitialize();
@@ -64,11 +64,18 @@
try {
selector = (ServiceSelector) this.manager.lookup(AccessControllerResolver.ROLE
+ "Selector");
- resolver = (AccessControllerResolver) selector.select(AccessControllerResolver.DEFAULT_RESOLVER);
+ resolver = (AccessControllerResolver) selector
+ .select(AccessControllerResolver.DEFAULT_RESOLVER);
this.accessController = resolver.resolveAccessController(getSourceURL());
- AccreditableManager accreditableManager = this.accessController.getAccreditableManager();
+ if (this.accessController == null) {
+ throw new RuntimeException("No access controller could be resolved for URL ["
+ + getSourceURL() + "].");
+ }
+
+ AccreditableManager accreditableManager = this.accessController
+ .getAccreditableManager();
this.userManager = accreditableManager.getUserManager();
this.groupManager = accreditableManager.getGroupManager();
@@ -124,7 +131,9 @@
protected UserManager getUserManager() {
if (this.userManager == null) {
if (getLogger().isDebugEnabled())
- getLogger().debug("getUserManager() accessed, is null, so calling initializeAccessController");
+ getLogger()
+ .debug(
+ "getUserManager() accessed, is null, so calling initializeAccessController");
initializeAccessController();
}
return this.userManager;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org