Package org.sonatype.nexus.rest.model

Examples of org.sonatype.nexus.rest.model.RepositoryGroupResource


  public void createEmptyGroup()
      throws Exception
  {
    GroupMessageUtil groupUtil = new GroupMessageUtil(getXMLXStream(), MediaType.APPLICATION_XML);

    RepositoryGroupResource resource = new RepositoryGroupResource();
    resource.setExposed(true);
    resource.setFormat("maven2");
    resource.setId("emptygroup");
    resource.setName("emptygroup");
    resource.setProvider("maven2");

    resource = groupUtil.createGroup(resource);

    Assert.assertEquals(0, resource.getRepositories().size());
  }
View Full Code Here


  public void createGroupWithRepoAndDelete()
      throws Exception
  {
    GroupMessageUtil groupUtil = new GroupMessageUtil(getXMLXStream(), MediaType.APPLICATION_XML);

    RepositoryGroupResource resource = new RepositoryGroupResource();
    resource.setExposed(true);
    resource.setFormat("maven2");
    resource.setId("nonemptygroup");
    resource.setName("nonemptygroup");
    resource.setProvider("maven2");

    RepositoryGroupMemberRepository member = new RepositoryGroupMemberRepository();
    member.setId(REPO_TEST_HARNESS_REPO);
    resource.addRepository(member);

    resource = groupUtil.createGroup(resource);

    resource.getRepositories().clear();

    resource = groupUtil.updateGroup(resource);

    Assert.assertEquals(0, resource.getRepositories().size());
  }
View Full Code Here

      throws Exception
  {

    String repoId = "public";

    RepositoryGroupResource repo = this.groupUtil.getGroup(repoId);
    repo.setName("new name");

    // use test user
    TestContainer.getInstance().getTestContext().setUsername(TEST_USER_NAME);
    TestContainer.getInstance().getTestContext().setPassword(TEST_USER_PASSWORD);
View Full Code Here

      throws Exception
  {

    String repoId = "test-group";

    RepositoryGroupResource repo = this.groupUtil.getGroup("public");
    repo.setId(repoId);

    // use test user
    TestContainer.getInstance().getTestContext().setUsername(TEST_USER_NAME);
    TestContainer.getInstance().getTestContext().setPassword(TEST_USER_PASSWORD);
View Full Code Here

      }
      else if (ShadowRepository.class.isAssignableFrom(template.getMainFacet())) {
        repoRes = createShadow(template);
      }
      else if (GroupRepository.class.isAssignableFrom(template.getMainFacet())) {
        repoRes = new RepositoryGroupResource();

        repoRes.setRepoType("group");
      }
      else {
        // huh?
View Full Code Here

  }

  @Test
  public void testRepositoryGroupResourceResponse() {
    RepositoryGroupResourceResponse resourceResponse = new RepositoryGroupResourceResponse();
    RepositoryGroupResource groupResource = new RepositoryGroupResource();
    groupResource.setFormat("format");
    groupResource.setId("groupResource");
    groupResource.setName("name");
    groupResource.setContentResourceURI("contentResourceURI");
    groupResource.setExposed(true);
    groupResource.setProvider("provider");
    groupResource.setProviderRole("providerRole");
    groupResource.setRepoType("group");

    RepositoryGroupMemberRepository memberRepo1 = new RepositoryGroupMemberRepository();
    memberRepo1.setId("memberRepo1");
    memberRepo1.setName("memberRepo1");
    memberRepo1.setResourceURI("memberRepoURI1");

    RepositoryGroupMemberRepository memberRepo2 = new RepositoryGroupMemberRepository();
    memberRepo2.setId("memberRepo2");
    memberRepo2.setName("memberRepo2");
    memberRepo2.setResourceURI("memberRepoURI2");
    groupResource.addRepository(memberRepo1);
    groupResource.addRepository(memberRepo2);

    resourceResponse.setData(groupResource);

    this.marshalUnmarchalThenCompare(resourceResponse);
    this.validateXmlHasNoPackageNames(resourceResponse);
View Full Code Here

      }
      else if (REPO_TYPE_HOSTED.equals(repoType)) {
        return new RepositoryResource();
      }
      else if (REPO_TYPE_GROUP.equals(repoType)) {
        return new RepositoryGroupResource();
      }
      else {
        return super.instantiateNewInstance(reader, context);
      }
    }
View Full Code Here

  {
    RepositoryGroupResourceResponse groupRequest = (RepositoryGroupResourceResponse) payload;
    RepositoryGroupResourceResponse result = new RepositoryGroupResourceResponse();

    if (groupRequest != null) {
      RepositoryGroupResource resource = groupRequest.getData();

      if (StringUtils.isEmpty(resource.getId())) {
        getLogger().warn("Repository group id is empty! ");

        throw new PlexusResourceException(
            Status.CLIENT_ERROR_NOT_FOUND,
            "Repository group id is empty! ",
View Full Code Here

  }

  protected RepositoryGroupResource buildGroupResource(Request request, GroupRepository group)
      throws ResourceException
  {
    RepositoryGroupResource resource = new RepositoryGroupResource();

    resource.setContentResourceURI(getRepositoryURLBuilder().getExposedRepositoryContentUrl(group));

    resource.setId(group.getId());

    resource.setName(group.getName());

    resource.setProvider(NexusCompat.getRepositoryProviderHint(group));

    resource.setRepoType(RepositoryBaseResourceConverter.REPO_TYPE_GROUP);

    resource.setFormat(group.getRepositoryContentClass().getId());

    resource.setExposed(group.isExposed());

    // just to trigger list creation, and not stay null coz of XStream serialization
    resource.getRepositories();

    for (String repoId : group.getMemberRepositoryIds()) {
      RepositoryGroupMemberRepository member = new RepositoryGroupMemberRepository();

      member.setId(repoId);

      try {
        // NOTE: we must hit the registry each time and NOT call groupRepo.getMemberRepositories, that doesn't block access
        member.setName(getRepositoryRegistry().getRepository(repoId).getName());
      }
      catch (NoSuchRepositoryAccessException e) {
        // access denied 403
        getLogger().debug("Blocking access to repository group, based on permissions.");

        throw new ResourceException(Status.CLIENT_ERROR_FORBIDDEN);
      }
      catch (NoSuchRepositoryException e) {
        getLogger().debug("Found missing repo id: " + repoId + " contained in group");
      }

      member.setResourceURI(createChildReference(request, this, repoId).toString());

      resource.addRepository(member);
    }

    return resource;
  }
View Full Code Here

      throws ResourceException
  {
    RepositoryGroupResourceResponse groupRequest = (RepositoryGroupResourceResponse) payload;

    if (groupRequest != null) {
      RepositoryGroupResource resource = groupRequest.getData();

      createOrUpdateRepositoryGroup(resource, true);

      try {
        RepositoryGroupResourceResponse result = new RepositoryGroupResourceResponse();
        result.setData(buildGroupResource(request, resource.getId()));

        return result;
      }
      catch (NoSuchRepositoryException e) {
        throw new PlexusResourceException(
View Full Code Here

TOP

Related Classes of org.sonatype.nexus.rest.model.RepositoryGroupResource

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.