| | |
| | | import org.slf4j.LoggerFactory;
|
| | |
|
| | | import com.gitblit.AuthenticationFilter.AuthenticatedRequest;
|
| | | import com.gitblit.manager.IProjectManager;
|
| | | import com.gitblit.manager.IRepositoryManager;
|
| | | import com.gitblit.manager.IRuntimeManager;
|
| | | import com.gitblit.models.FeedEntryModel;
|
| | | import com.gitblit.models.ProjectModel;
|
| | | import com.gitblit.models.RefModel;
|
| | |
| | | import com.gitblit.models.UserModel;
|
| | | import com.gitblit.utils.HttpUtils;
|
| | | import com.gitblit.utils.JGitUtils;
|
| | | import com.gitblit.utils.MessageProcessor;
|
| | | import com.gitblit.utils.StringUtils;
|
| | | import com.gitblit.utils.SyndicationUtils;
|
| | |
|
| | |
| | | javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException,
|
| | | java.io.IOException {
|
| | |
|
| | | IStoredSettings settings = GitBlit.getManager(IRuntimeManager.class).getSettings();
|
| | | IRepositoryManager repositoryManager = GitBlit.getManager(IRepositoryManager.class);
|
| | | IProjectManager projectManager = GitBlit.getManager(IProjectManager.class);
|
| | |
|
| | | String servletUrl = request.getContextPath() + request.getServletPath();
|
| | | String url = request.getRequestURI().substring(servletUrl.length());
|
| | | if (url.charAt(0) == '/' && url.length() > 1) {
|
| | |
| | | searchType = type;
|
| | | }
|
| | | }
|
| | | int length = GitBlit.getInteger(Keys.web.syndicationEntries, 25);
|
| | | int length = settings.getInteger(Keys.web.syndicationEntries, 25);
|
| | | if (StringUtils.isEmpty(objectId)) {
|
| | | objectId = org.eclipse.jgit.lib.Constants.HEAD;
|
| | | }
|
| | |
| | | if (request instanceof AuthenticatedRequest) {
|
| | | user = ((AuthenticatedRequest) request).getUser();
|
| | | }
|
| | | ProjectModel project = GitBlit.self().getProjectModel(repositoryName, user);
|
| | | ProjectModel project = projectManager.getProjectModel(repositoryName, user);
|
| | | if (project != null) {
|
| | | isProjectFeed = true;
|
| | | repositories = new ArrayList<String>(project.repositories);
|
| | |
| | | }
|
| | |
|
| | |
|
| | | boolean mountParameters = GitBlit.getBoolean(Keys.web.mountParameters, true);
|
| | | boolean mountParameters = settings.getBoolean(Keys.web.mountParameters, true);
|
| | | String urlPattern;
|
| | | if (mountParameters) {
|
| | | // mounted parameters
|
| | |
| | | urlPattern = "{0}/commit/?r={1}&h={2}";
|
| | | }
|
| | | String gitblitUrl = HttpUtils.getGitblitURL(request);
|
| | | char fsc = GitBlit.getChar(Keys.web.forwardSlashCharacter, '/');
|
| | | char fsc = settings.getChar(Keys.web.forwardSlashCharacter, '/');
|
| | |
|
| | | List<FeedEntryModel> entries = new ArrayList<FeedEntryModel>();
|
| | |
|
| | | for (String name : repositories) {
|
| | | Repository repository = GitBlit.self().getRepository(name);
|
| | | RepositoryModel model = GitBlit.self().getRepositoryModel(name);
|
| | | Repository repository = repositoryManager.getRepository(name);
|
| | | RepositoryModel model = repositoryManager.getRepositoryModel(name);
|
| | |
|
| | | if (repository == null) {
|
| | | if (model.isCollectingGarbage) {
|
| | |
| | | offset, length);
|
| | | }
|
| | | Map<ObjectId, List<RefModel>> allRefs = JGitUtils.getAllRefs(repository, model.showRemoteBranches);
|
| | | MessageProcessor processor = new MessageProcessor(settings);
|
| | |
|
| | | // convert RevCommit to SyndicatedEntryModel
|
| | | for (RevCommit commit : commits) {
|
| | |
| | | StringUtils.encodeURL(model.name.replace('/', fsc)), commit.getName());
|
| | | entry.published = commit.getCommitterIdent().getWhen();
|
| | | entry.contentType = "text/html";
|
| | | String message = GitBlit.self().processCommitMessage(model,
|
| | | commit.getFullMessage());
|
| | | String message = processor.processCommitMessage(model, commit.getFullMessage());
|
| | | entry.content = message;
|
| | | entry.repository = model.name;
|
| | | entry.branch = objectId;
|