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:
Luca Milanesio
2017-05-31 06:35:31 +01:00
parent a20767c849
commit 1339491aeb
2 changed files with 3 additions and 2 deletions

View File

@@ -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);

View File

@@ -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());
}