| | |
| | | import java.io.InputStream; |
| | | import java.io.InputStreamReader; |
| | | import java.lang.reflect.Type; |
| | | import java.security.PublicKey; |
| | | import java.text.MessageFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.Collection; |
| | |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | |
| | | import ro.fortsoft.pf4j.PluginClassLoader; |
| | | import ro.fortsoft.pf4j.PluginWrapper; |
| | | import ro.fortsoft.pf4j.RuntimeMode; |
| | | |
| | | import com.gitblit.Constants; |
| | | import com.gitblit.Constants.AccessPermission; |
| | |
| | | import com.gitblit.models.GitClientApplication; |
| | | import com.gitblit.models.Mailing; |
| | | import com.gitblit.models.Metric; |
| | | import com.gitblit.models.PluginRegistry.PluginRegistration; |
| | | import com.gitblit.models.PluginRegistry.PluginRelease; |
| | | import com.gitblit.models.ProjectModel; |
| | | import com.gitblit.models.RegistrantAccessPermission; |
| | | import com.gitblit.models.RepositoryModel; |
| | |
| | | import com.gitblit.models.UserModel; |
| | | import com.gitblit.tickets.ITicketService; |
| | | import com.gitblit.transport.ssh.IPublicKeyManager; |
| | | import com.gitblit.transport.ssh.SshKey; |
| | | import com.gitblit.utils.ArrayUtils; |
| | | import com.gitblit.utils.HttpUtils; |
| | | import com.gitblit.utils.JsonUtils; |
| | |
| | | |
| | | protected final IRuntimeManager runtimeManager; |
| | | |
| | | protected final IPluginManager pluginManager; |
| | | |
| | | protected final INotificationManager notificationManager; |
| | | |
| | | protected final IUserManager userManager; |
| | |
| | | |
| | | protected final IFederationManager federationManager; |
| | | |
| | | protected final IPluginManager pluginManager; |
| | | |
| | | public GitblitManager( |
| | | IRuntimeManager runtimeManager, |
| | | IPluginManager pluginManager, |
| | | INotificationManager notificationManager, |
| | | IUserManager userManager, |
| | | IAuthenticationManager authenticationManager, |
| | | IPublicKeyManager publicKeyManager, |
| | | IRepositoryManager repositoryManager, |
| | | IProjectManager projectManager, |
| | | IFederationManager federationManager, |
| | | IPluginManager pluginManager) { |
| | | IFederationManager federationManager) { |
| | | |
| | | this.settings = runtimeManager.getSettings(); |
| | | this.runtimeManager = runtimeManager; |
| | | this.pluginManager = pluginManager; |
| | | this.notificationManager = notificationManager; |
| | | this.userManager = userManager; |
| | | this.authenticationManager = authenticationManager; |
| | |
| | | this.repositoryManager = repositoryManager; |
| | | this.projectManager = projectManager; |
| | | this.federationManager = federationManager; |
| | | this.pluginManager = pluginManager; |
| | | } |
| | | |
| | | @Override |
| | |
| | | repositoryManager.updateRepositoryModel(model.name, model, false); |
| | | } |
| | | } |
| | | |
| | | // rename the user's ssh public keystore |
| | | getPublicKeyManager().renameUser(username, user.username); |
| | | } |
| | | if (!userManager.updateUserModel(username, user)) { |
| | | throw new GitBlitException("Failed to update user!"); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public UserModel authenticate(String username, PublicKey key) { |
| | | public UserModel authenticate(String username, SshKey key) { |
| | | return authenticationManager.authenticate(username, key); |
| | | } |
| | | |
| | |
| | | return repositoryManager.isIdle(repository); |
| | | } |
| | | |
| | | /* |
| | | * PLUGIN MANAGER |
| | | */ |
| | | |
| | | @Override |
| | | public <T> List<T> getExtensions(Class<T> clazz) { |
| | | return pluginManager.getExtensions(clazz); |
| | |
| | | public PluginWrapper whichPlugin(Class<?> clazz) { |
| | | return pluginManager.whichPlugin(clazz); |
| | | } |
| | | |
| | | @Override |
| | | public boolean deletePlugin(PluginWrapper wrapper) { |
| | | return pluginManager.deletePlugin(wrapper); |
| | | } |
| | | |
| | | @Override |
| | | public boolean refreshRegistry() { |
| | | return pluginManager.refreshRegistry(); |
| | | } |
| | | |
| | | @Override |
| | | public boolean installPlugin(String url) { |
| | | return pluginManager.installPlugin(url); |
| | | } |
| | | |
| | | @Override |
| | | public boolean installPlugin(PluginRelease pv) { |
| | | return pluginManager.installPlugin(pv); |
| | | } |
| | | |
| | | @Override |
| | | public List<PluginRegistration> getRegisteredPlugins() { |
| | | return pluginManager.getRegisteredPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public PluginRegistration lookupPlugin(String idOrName) { |
| | | return pluginManager.lookupPlugin(idOrName); |
| | | } |
| | | |
| | | @Override |
| | | public PluginRelease lookupRelease(String idOrName, String version) { |
| | | return pluginManager.lookupRelease(idOrName, version); |
| | | } |
| | | |
| | | @Override |
| | | public List<PluginWrapper> getPlugins() { |
| | | return pluginManager.getPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public List<PluginWrapper> getResolvedPlugins() { |
| | | return pluginManager.getResolvedPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public List<PluginWrapper> getUnresolvedPlugins() { |
| | | return pluginManager.getUnresolvedPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public List<PluginWrapper> getStartedPlugins() { |
| | | return pluginManager.getStartedPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public void loadPlugins() { |
| | | pluginManager.loadPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public void startPlugins() { |
| | | pluginManager.startPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public void stopPlugins() { |
| | | pluginManager.stopPlugins(); |
| | | } |
| | | |
| | | @Override |
| | | public PluginClassLoader getPluginClassLoader(String pluginId) { |
| | | return pluginManager.getPluginClassLoader(pluginId); |
| | | } |
| | | |
| | | @Override |
| | | public RuntimeMode getRuntimeMode() { |
| | | return pluginManager.getRuntimeMode(); |
| | | } |
| | | } |