added ResourceHandler api

This commit is contained in:
Sebastian Sdorra
2011-01-18 19:51:37 +01:00
parent b5f60f0be3
commit 6cb5ae1f88
7 changed files with 407 additions and 1 deletions

View File

@@ -47,6 +47,7 @@ import sonia.scm.plugin.ext.Extension;
import sonia.scm.plugin.ext.ExtensionProcessor;
import sonia.scm.repository.RepositoryHandler;
import sonia.scm.repository.RepositoryListener;
import sonia.scm.resources.ResourceHandler;
import sonia.scm.security.EncryptionHandler;
import sonia.scm.user.UserListener;
import sonia.scm.web.security.AuthenticationHandler;
@@ -97,6 +98,8 @@ public class BindingExtensionProcessor implements ExtensionProcessor
Multibinder.newSetBinder(binder, RepositoryHandler.class);
Multibinder<AuthenticationHandler> authenticators =
Multibinder.newSetBinder(binder, AuthenticationHandler.class);
Multibinder<ResourceHandler> resourceHandler =
Multibinder.newSetBinder(binder, ResourceHandler.class);
authenticators.addBinding().to(XmlAuthenticationHandler.class);
@@ -176,6 +179,15 @@ public class BindingExtensionProcessor implements ExtensionProcessor
authenticationListeners.add(listener);
}
else if (ResourceHandler.class.isAssignableFrom(extensionClass))
{
if (logger.isInfoEnabled())
{
logger.info("bind ResourceHandler {}", extensionClass.getName());
}
resourceHandler.addBinding().to(extensionClass);
}
else
{
if (logger.isInfoEnabled())