@Test
  public void validateP2ProxyMaxAgeConfig() throws Exception {
    RepositoryProxyResource p2repo = new RepositoryProxyResource();

    p2repo.setRepoType("proxy");
    p2repo.setId("p2proxy");
    p2repo.setName("p2proxy");
    p2repo.setBrowseable(true);
    p2repo.setIndexable(false);
    p2repo.setNotFoundCacheTTL(1440);
    p2repo.setArtifactMaxAge(100);
    p2repo.setMetadataMaxAge(200);
    p2repo.setRepoPolicy("RELEASE");
    p2repo.setProvider("p2");
    p2repo.setProviderRole("org.sonatype.nexus.proxy.repository.Repository");
    p2repo.setOverrideLocalStorageUrl(null);
    p2repo.setDefaultLocalStorageUrl(null);
    p2repo.setDownloadRemoteIndexes(false);
    p2repo.setExposed(true);
    p2repo.setChecksumPolicy("WARN");

    final RepositoryResourceRemoteStorage p2proxyRemoteStorage =
        new RepositoryResourceRemoteStorage();
    p2proxyRemoteStorage.setRemoteStorageUrl("http://p2proxy");
    p2proxyRemoteStorage.setAuthentication(null);
    p2proxyRemoteStorage.setConnectionSettings(null);
    p2proxyRemoteStorage.setHttpProxySettings(null);

    p2repo.setRemoteStorage(p2proxyRemoteStorage);

    p2repo = (RepositoryProxyResource) repoUtil.createRepository(p2repo, false);

    p2repo = (RepositoryProxyResource) repoUtil.getRepository(p2repo.getId());

    assertThat(p2repo.getArtifactMaxAge(), is(100));
    assertThat(p2repo.getMetadataMaxAge(), is(200));

    // now do an update
    p2repo.setArtifactMaxAge(300);
    p2repo.setMetadataMaxAge(400);

    repoUtil.updateRepo(p2repo, false);

    p2repo = (RepositoryProxyResource) repoUtil.getRepository(p2repo.getId());

    assertThat(p2repo.getArtifactMaxAge(), is(300));
    assertThat(p2repo.getMetadataMaxAge(), is(400));
  }
コード例 #2
0
  protected void createProxyRepository() throws Exception {
    RepositoryResource resource = new RepositoryResource();

    resource.setProvider("maven2");
    resource.setFormat("maven2");
    resource.setRepoPolicy("release");
    resource.setChecksumPolicy("ignore");
    resource.setBrowseable(false);
    resource.setIndexable(false);

    resource.setId(PROXY_REPO_ID);
    resource.setName(PROXY_REPO_ID);
    resource.setRepoType("proxy");
    resource.setWritePolicy(RepositoryWritePolicy.READ_ONLY.name());
    resource.setDownloadRemoteIndexes(true);
    RepositoryResourceRemoteStorage remoteStorage = new RepositoryResourceRemoteStorage();
    remoteStorage.setRemoteStorageUrl(
        getBaseNexusUrl() + "content/repositories/nexus-test-harness-repo/");
    resource.setRemoteStorage(remoteStorage);
    resource.setRepoPolicy(RepositoryPolicy.RELEASE.name());
    resource.setChecksumPolicy(ChecksumPolicy.IGNORE.name());
    new RepositoryMessageUtil(this, this.getJsonXStream(), MediaType.APPLICATION_JSON)
        .createRepository(resource);
  }