Allow rebinding of PermissionBackend by libModules
Set the DefaultPermissionBackend as default binding and leave the door opened to rebinding it. Allow alternative backend implementations provided via libModules. Change-Id: Ifebc666cb9309e34ced0c653a1646d279923d18d
This commit is contained in:
@@ -26,8 +26,10 @@ import com.google.gerrit.reviewdb.client.Project;
|
||||
import com.google.gerrit.reviewdb.server.ReviewDb;
|
||||
import com.google.gerrit.server.CurrentUser;
|
||||
import com.google.gerrit.server.notedb.ChangeNotes;
|
||||
import com.google.gerrit.server.project.DefaultPermissionBackend;
|
||||
import com.google.gerrit.server.query.change.ChangeData;
|
||||
import com.google.gwtorm.server.OrmException;
|
||||
import com.google.inject.ImplementedBy;
|
||||
import com.google.inject.Provider;
|
||||
import com.google.inject.util.Providers;
|
||||
import java.util.Collection;
|
||||
@@ -80,6 +82,7 @@ import org.slf4j.LoggerFactory;
|
||||
* }
|
||||
* </pre>
|
||||
*/
|
||||
@ImplementedBy(DefaultPermissionBackend.class)
|
||||
public abstract class PermissionBackend {
|
||||
private static final Logger logger = LoggerFactory.getLogger(PermissionBackend.class);
|
||||
|
||||
|
@@ -17,13 +17,11 @@ package com.google.gerrit.server.project;
|
||||
import com.google.gerrit.extensions.config.FactoryModule;
|
||||
import com.google.gerrit.server.permissions.PermissionBackend;
|
||||
import com.google.inject.AbstractModule;
|
||||
import com.google.inject.Scopes;
|
||||
|
||||
/** Binds the default {@link PermissionBackend}. */
|
||||
public class DefaultPermissionBackendModule extends AbstractModule {
|
||||
@Override
|
||||
protected void configure() {
|
||||
bind(PermissionBackend.class).to(DefaultPermissionBackend.class).in(Scopes.SINGLETON);
|
||||
install(new LegacyControlsModule());
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user