| | |
| | | import org.apache.wicket.markup.html.WebPage; |
| | | import org.apache.wicket.protocol.http.WebApplication; |
| | | |
| | | import com.gitblit.GitBlit; |
| | | import com.gitblit.IStoredSettings; |
| | | import com.gitblit.Keys; |
| | | import com.gitblit.manager.IAuthenticationManager; |
| | | import com.gitblit.manager.IFederationManager; |
| | | import com.gitblit.manager.IGitblit; |
| | | import com.gitblit.manager.INotificationManager; |
| | | import com.gitblit.manager.IProjectManager; |
| | | import com.gitblit.manager.IRepositoryManager; |
| | | import com.gitblit.manager.IRuntimeManager; |
| | | import com.gitblit.manager.IUserManager; |
| | | import com.gitblit.tickets.ITicketService; |
| | | import com.gitblit.utils.StringUtils; |
| | | import com.gitblit.wicket.pages.ActivityPage; |
| | | import com.gitblit.wicket.pages.BlamePage; |
| | |
| | | import com.gitblit.wicket.pages.ComparePage; |
| | | import com.gitblit.wicket.pages.DocPage; |
| | | import com.gitblit.wicket.pages.DocsPage; |
| | | import com.gitblit.wicket.pages.EditTicketPage; |
| | | import com.gitblit.wicket.pages.ExportTicketPage; |
| | | import com.gitblit.wicket.pages.FederationRegistrationPage; |
| | | import com.gitblit.wicket.pages.ForkPage; |
| | | import com.gitblit.wicket.pages.ForksPage; |
| | | import com.gitblit.wicket.pages.GitSearchPage; |
| | | import com.gitblit.wicket.pages.GravatarProfilePage; |
| | | import com.gitblit.wicket.pages.HistoryPage; |
| | | import com.gitblit.wicket.pages.LogPage; |
| | | import com.gitblit.wicket.pages.LogoutPage; |
| | | import com.gitblit.wicket.pages.LuceneSearchPage; |
| | | import com.gitblit.wicket.pages.MetricsPage; |
| | | import com.gitblit.wicket.pages.MyDashboardPage; |
| | | import com.gitblit.wicket.pages.NewTicketPage; |
| | | import com.gitblit.wicket.pages.OverviewPage; |
| | | import com.gitblit.wicket.pages.PatchPage; |
| | | import com.gitblit.wicket.pages.ProjectPage; |
| | |
| | | import com.gitblit.wicket.pages.SummaryPage; |
| | | import com.gitblit.wicket.pages.TagPage; |
| | | import com.gitblit.wicket.pages.TagsPage; |
| | | import com.gitblit.wicket.pages.TicketsPage; |
| | | import com.gitblit.wicket.pages.TreePage; |
| | | import com.gitblit.wicket.pages.UserPage; |
| | | import com.gitblit.wicket.pages.UsersPage; |
| | |
| | | |
| | | private final Map<String, CacheControl> cacheablePages = new HashMap<String, CacheControl>(); |
| | | |
| | | private IStoredSettings settings; |
| | | private final IStoredSettings settings; |
| | | |
| | | private final IRuntimeManager runtimeManager; |
| | | |
| | | private final INotificationManager notificationManager; |
| | | |
| | | private final IUserManager userManager; |
| | | |
| | | private final IAuthenticationManager authenticationManager; |
| | | |
| | | private final IRepositoryManager repositoryManager; |
| | | |
| | | private final IProjectManager projectManager; |
| | | |
| | | private final IFederationManager federationManager; |
| | | |
| | | private final IGitblit gitblit; |
| | | |
| | | public GitBlitWebApp( |
| | | IRuntimeManager runtimeManager, |
| | | INotificationManager notificationManager, |
| | | IUserManager userManager, |
| | | IAuthenticationManager authenticationManager, |
| | | IRepositoryManager repositoryManager, |
| | | IProjectManager projectManager, |
| | | IFederationManager federationManager, |
| | | IGitblit gitblit) { |
| | | |
| | | super(); |
| | | this.settings = runtimeManager.getSettings(); |
| | | this.runtimeManager = runtimeManager; |
| | | this.notificationManager = notificationManager; |
| | | this.userManager = userManager; |
| | | this.authenticationManager = authenticationManager; |
| | | this.repositoryManager = repositoryManager; |
| | | this.projectManager = projectManager; |
| | | this.federationManager = federationManager; |
| | | this.gitblit = gitblit; |
| | | } |
| | | |
| | | @Override |
| | | public void init() { |
| | | super.init(); |
| | | |
| | | settings = GitBlit.getSettings(); |
| | | |
| | | // Setup page authorization mechanism |
| | | boolean useAuthentication = settings.getBoolean(Keys.web.authenticateViewPages, false) |
| | |
| | | mount("/users", UsersPage.class); |
| | | mount("/logout", LogoutPage.class); |
| | | |
| | | // setup ticket urls |
| | | mount("/tickets", TicketsPage.class, "r", "h"); |
| | | mount("/tickets/new", NewTicketPage.class, "r"); |
| | | mount("/tickets/edit", EditTicketPage.class, "r", "h"); |
| | | mount("/tickets/export", ExportTicketPage.class, "r", "h"); |
| | | |
| | | // setup the markup document urls |
| | | mount("/docs", DocsPage.class, "r"); |
| | | mount("/doc", DocPage.class, "r", "h", "f"); |
| | |
| | | mount("/registration", FederationRegistrationPage.class, "u", "n"); |
| | | |
| | | mount("/activity", ActivityPage.class, "r", "h"); |
| | | mount("/gravatar", GravatarProfilePage.class, "h"); |
| | | mount("/lucene", LuceneSearchPage.class); |
| | | mount("/project", ProjectPage.class, "p"); |
| | | mount("/projects", ProjectsPage.class); |
| | | mount("/user", UserPage.class, "user"); |
| | | mount("/forks", ForksPage.class, "r"); |
| | | mount("/fork", ForkPage.class, "r"); |
| | | |
| | | |
| | | getMarkupSettings().setDefaultMarkupEncoding("UTF-8"); |
| | | super.init(); |
| | | } |
| | |
| | | * @return true if Gitblit is running in debug mode |
| | | */ |
| | | public boolean isDebugMode() { |
| | | return GitBlit.isDebugMode(); |
| | | return runtimeManager.isDebugMode(); |
| | | } |
| | | |
| | | /* |
| | |
| | | * step towards modularization across multiple commits. |
| | | */ |
| | | public Date getBootDate() { |
| | | return GitBlit.getBootDate(); |
| | | return runtimeManager.getBootDate(); |
| | | } |
| | | |
| | | public Date getLastActivityDate() { |
| | | return GitBlit.getLastActivityDate(); |
| | | return repositoryManager.getLastActivityDate(); |
| | | } |
| | | |
| | | public GitBlit runtime() { |
| | | return GitBlit.self(); |
| | | public IRuntimeManager runtime() { |
| | | return runtimeManager; |
| | | } |
| | | |
| | | public GitBlit mail() { |
| | | return GitBlit.self(); |
| | | public INotificationManager notifier() { |
| | | return notificationManager; |
| | | } |
| | | |
| | | public GitBlit users() { |
| | | return GitBlit.self(); |
| | | public IUserManager users() { |
| | | return userManager; |
| | | } |
| | | |
| | | public GitBlit session() { |
| | | return GitBlit.self(); |
| | | public IAuthenticationManager authentication() { |
| | | return authenticationManager; |
| | | } |
| | | |
| | | public GitBlit repositories() { |
| | | return GitBlit.self(); |
| | | public IRepositoryManager repositories() { |
| | | return repositoryManager; |
| | | } |
| | | |
| | | public GitBlit projects() { |
| | | return GitBlit.self(); |
| | | public IProjectManager projects() { |
| | | return projectManager; |
| | | } |
| | | |
| | | public GitBlit federation() { |
| | | return GitBlit.self(); |
| | | public IFederationManager federation() { |
| | | return federationManager; |
| | | } |
| | | |
| | | public GitBlit gitblit() { |
| | | return GitBlit.self(); |
| | | public IGitblit gitblit() { |
| | | return gitblit; |
| | | } |
| | | |
| | | public ITicketService tickets() { |
| | | return gitblit.getTicketService(); |
| | | } |
| | | |
| | | public TimeZone getTimezone() { |
| | | return GitBlit.getTimezone(); |
| | | return runtimeManager.getTimezone(); |
| | | } |
| | | |
| | | @Override |
| | | public final String getConfigurationType() { |
| | | if (isDebugMode()) { |
| | | if (runtimeManager.isDebugMode()) { |
| | | return Application.DEVELOPMENT; |
| | | } |
| | | return Application.DEPLOYMENT; |