Package com.gitblit.models

Examples of com.gitblit.models.ProjectModel


      // try to find a project
      UserModel user = null;
      if (request instanceof AuthenticatedRequest) {
        user = ((AuthenticatedRequest) request).getUser();
      }
      ProjectModel project = projectManager.getProjectModel(repositoryName, user);
      if (project != null) {
        isProjectFeed = true;
        repositories = new ArrayList<String>(project.repositories);

        // project feed
View Full Code Here


    HttpServletResponse httpResponse = (HttpServletResponse) response;

    String fullUrl = getFullUrl(httpRequest);
    String name = extractRequestedName(fullUrl);

    ProjectModel project = projectManager.getProjectModel(name);
    RepositoryModel model = null;

    if (project == null) {
      // try loading a repository model
      model = repositoryManager.getRepositoryModel(name);
View Full Code Here

        counter = 0;
      }

      @Override
      public void populateItem(final Item<ProjectModel> item) {
        final ProjectModel entry = item.getModelObject();

        PageParameters pp = WicketUtils.newProjectParameter(entry.name);
        item.add(new LinkPanel("projectTitle", "list", entry.getDisplayName(),
            ProjectPage.class, pp));
        item.add(new LinkPanel("projectDescription", "list", entry.description,
            ProjectPage.class, pp));

        item.add(new Label("repositoryCount", entry.repositories.size()
View Full Code Here

  }

  @Override
  protected void setupPage(String repositoryName, String pageName) {
    String projectName = StringUtils.getFirstPathElement(repositoryName);
    ProjectModel project = app().projects().getProjectModel(projectName);
    if (project.isUserProject()) {
      // user-as-project
      add(new LinkPanel("projectTitle", null, project.getDisplayName(),
          UserPage.class, WicketUtils.newUsernameParameter(project.name.substring(1))));
    } else {
      // project
      add(new LinkPanel("projectTitle", null, project.name,
          ProjectPage.class, WicketUtils.newProjectParameter(project.name)));
View Full Code Here

      CacheControl cacheControl = getClass().getAnnotation(CacheControl.class);
      switch (cacheControl.value()) {
      case PROJECT:
        String projectName = WicketUtils.getProjectName(getPageParameters());
        if (!StringUtils.isEmpty(projectName)) {
          ProjectModel project = getProjectModel(projectName);
          if (project != null) {
            setLastModified(project.lastChange);
          }
        }
        break;
View Full Code Here

    String projectName = params == null ? null : WicketUtils.getProjectName(params);
    if (StringUtils.isEmpty(projectName)) {
      throw new GitblitRedirectException(GitBlitWebApp.get().getHomePage());
    }

    ProjectModel project = getProjectModel(projectName);
    if (project == null) {
      throw new GitblitRedirectException(GitBlitWebApp.get().getHomePage());
    }

    add(new Label("projectTitle", project.getDisplayName()));
    add(new Label("projectDescription", project.description));

    String feedLink = SyndicationServlet.asLink(getRequest().getRelativePathPrefixToContextRoot(), projectName, null, 0);
    add(new ExternalLink("syndication", feedLink));

    add(WicketUtils.syndicationDiscoveryLink(SyndicationServlet.getTitle(project.getDisplayName(),
        null), feedLink));

    // project markdown message
    String pmessage = transformMarkdown(project.projectMarkdown);
    Component projectMessage = new Label("projectMessage", pmessage)
View Full Code Here

      }

      List<RepositoryModel> groupedModels = new ArrayList<RepositoryModel>();
      for (String root : roots) {
        List<RepositoryModel> subModels = groups.get(root);
        ProjectModel project = app().projects().getProjectModel(root);
        GroupRepositoryModel group = new GroupRepositoryModel(project == null ? root : project.name, subModels.size());
        if (project != null) {
          group.title = project.title;
          group.description = project.description;
        }
View Full Code Here

      } catch (Exception e) {
      }

      // project configs
      String rootName = settings.getString(Keys.web.repositoryRootGroupName, "main");
      ProjectModel rootProject = new ProjectModel(rootName, true);

      Map<String, ProjectModel> configs = new HashMap<String, ProjectModel>();
      // cache the root project under its alias and an empty path
      configs.put("", rootProject);
      configs.put(rootProject.name.toLowerCase(), rootProject);

      for (String name : projectConfigs.getSubsections("project")) {
        ProjectModel project;
        if (name.equalsIgnoreCase(rootName)) {
          project = rootProject;
        } else {
          project = new ProjectModel(name);
        }
        project.title = projectConfigs.getString("project", name, "title");
        project.description = projectConfigs.getString("project", name, "description");

        reloadProjectMarkdown(project);
View Full Code Here

    map.put("", configs.get(""));

    for (RepositoryModel model : repositoryManager.getRepositoryModels(user)) {
      String rootPath = StringUtils.getRootPath(model.name).toLowerCase();
      if (!map.containsKey(rootPath)) {
        ProjectModel project;
        if (configs.containsKey(rootPath)) {
          // clone the project model because it's repository list will
          // be tailored for the requesting user
          project = DeepCopier.copy(configs.get(rootPath));
        } else {
          project = new ProjectModel(rootPath);
        }
        map.put(rootPath, project);
      }
      map.get(rootPath).addRepository(model);
    }

    // sort projects, root project first
    List<ProjectModel> projects;
    if (includeUsers) {
      // all projects
      projects = new ArrayList<ProjectModel>(map.values());
      Collections.sort(projects);
      projects.remove(map.get(""));
      projects.add(0, map.get(""));
    } else {
      // all non-user projects
      projects = new ArrayList<ProjectModel>();
      ProjectModel root = map.remove("");
      for (ProjectModel model : map.values()) {
        if (!model.isUserProject()) {
          projects.add(model);
        }
      }
View Full Code Here

   * @return a project model or null if the project does not exist
   */
  @Override
  public ProjectModel getProjectModel(String name) {
    Map<String, ProjectModel> configs = getProjectConfigs();
    ProjectModel project = configs.get(name.toLowerCase());
    if (project == null) {
      project = new ProjectModel(name);
      if (ModelUtils.isPersonalRepository(name)) {
        UserModel user = userManager.getUserModel(ModelUtils.getUserNameFromRepoPath(name));
        if (user != null) {
          project.title = user.getDisplayName();
          project.description = "personal repositories";
        }
      }
    } else {
      // clone the object
      project = DeepCopier.copy(project);
    }
    if (StringUtils.isEmpty(name)) {
      // get root repositories
      for (String repository : repositoryManager.getRepositoryList()) {
        if (repository.indexOf('/') == -1) {
          project.addRepository(repository);
        }
      }
    } else {
      // get repositories in subfolder
      String folder = name.toLowerCase() + "/";
      for (String repository : repositoryManager.getRepositoryList()) {
        if (repository.toLowerCase().startsWith(folder)) {
          project.addRepository(repository);
        }
      }
    }
    if (project.repositories.size() == 0) {
      // no repositories == no project
View Full Code Here

TOP

Related Classes of com.gitblit.models.ProjectModel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.