Search in sources :

Example 1 with ProxyConnectorRule

use of org.apache.archiva.admin.model.beans.ProxyConnectorRule in project archiva by apache.

the class ProxyConnectorRuleAdminTest method addProxyConnectorRule.

@Test
public void addProxyConnectorRule() throws Exception {
    ProxyConnector proxyConnector = new ProxyConnector();
    proxyConnector.setSourceRepoId("snapshots");
    proxyConnector.setTargetRepoId("central");
    ProxyConnectorRule rule = null;
    try {
        int size = proxyConnectorRuleAdmin.getProxyConnectorRules().size();
        assertEquals(0, size);
        proxyConnectorAdmin.addProxyConnector(proxyConnector, getFakeAuditInformation());
        rule = new ProxyConnectorRule("org/apache/maven", ProxyConnectorRuleType.BLACK_LIST, Arrays.asList(proxyConnector));
        proxyConnectorRuleAdmin.addProxyConnectorRule(rule, getFakeAuditInformation());
        assertEquals(size + 1, proxyConnectorRuleAdmin.getProxyConnectorRules().size());
        rule = proxyConnectorRuleAdmin.getProxyConnectorRules().get(0);
        assertEquals("org/apache/maven", rule.getPattern());
        assertEquals(1, rule.getProxyConnectors().size());
        assertEquals("snapshots", rule.getProxyConnectors().get(0).getSourceRepoId());
        assertEquals("central", rule.getProxyConnectors().get(0).getTargetRepoId());
        assertEquals(ProxyConnectorRuleType.BLACK_LIST, rule.getProxyConnectorRuleType());
    } finally {
        proxyConnectorRuleAdmin.deleteProxyConnectorRule(rule, getFakeAuditInformation());
        proxyConnectorAdmin.deleteProxyConnector(proxyConnector, getFakeAuditInformation());
    }
}
Also used : ProxyConnectorRule(org.apache.archiva.admin.model.beans.ProxyConnectorRule) ProxyConnector(org.apache.archiva.admin.model.beans.ProxyConnector) AbstractRepositoryAdminTest(org.apache.archiva.admin.repository.AbstractRepositoryAdminTest) Test(org.junit.Test)

Example 2 with ProxyConnectorRule

use of org.apache.archiva.admin.model.beans.ProxyConnectorRule in project archiva by apache.

the class ProxyConnectorRuleAdminTest method addProxyConnectorRuleWithTwoProxyConnectors.

@Test
public void addProxyConnectorRuleWithTwoProxyConnectors() throws Exception {
    RemoteRepository remoteRepository = new RemoteRepository(Locale.getDefault());
    remoteRepository.setId("archiva");
    remoteRepository.setName("archiva rocks");
    remoteRepository.setUrl("http://wine.org");
    remoteRepositoryAdmin.addRemoteRepository(remoteRepository, getFakeAuditInformation());
    int size = proxyConnectorRuleAdmin.getProxyConnectorRules().size();
    assertEquals(0, size);
    ProxyConnector proxyConnector1 = new ProxyConnector();
    proxyConnector1.setSourceRepoId("snapshots");
    proxyConnector1.setTargetRepoId("central");
    proxyConnectorAdmin.addProxyConnector(proxyConnector1, getFakeAuditInformation());
    ProxyConnector proxyConnector2 = new ProxyConnector();
    proxyConnector2.setSourceRepoId("snapshots");
    proxyConnector2.setTargetRepoId("archiva");
    proxyConnectorAdmin.addProxyConnector(proxyConnector2, getFakeAuditInformation());
    ProxyConnectorRule rule = new ProxyConnectorRule("org/apache/maven", ProxyConnectorRuleType.BLACK_LIST, Arrays.asList(proxyConnector1, proxyConnector2));
    try {
        proxyConnectorRuleAdmin.addProxyConnectorRule(rule, getFakeAuditInformation());
        assertEquals(size + 1, proxyConnectorRuleAdmin.getProxyConnectorRules().size());
        rule = proxyConnectorRuleAdmin.getProxyConnectorRules().get(0);
        assertEquals("org/apache/maven", rule.getPattern());
        assertEquals(2, rule.getProxyConnectors().size());
        assertEquals(ProxyConnectorRuleType.BLACK_LIST, rule.getProxyConnectorRuleType());
    } finally {
        proxyConnectorRuleAdmin.deleteProxyConnectorRule(rule, getFakeAuditInformation());
        proxyConnectorAdmin.deleteProxyConnector(proxyConnector1, getFakeAuditInformation());
        proxyConnectorAdmin.deleteProxyConnector(proxyConnector2, getFakeAuditInformation());
        remoteRepositoryAdmin.deleteRemoteRepository(remoteRepository.getId(), getFakeAuditInformation());
    }
}
Also used : ProxyConnectorRule(org.apache.archiva.admin.model.beans.ProxyConnectorRule) RemoteRepository(org.apache.archiva.admin.model.beans.RemoteRepository) ProxyConnector(org.apache.archiva.admin.model.beans.ProxyConnector) AbstractRepositoryAdminTest(org.apache.archiva.admin.repository.AbstractRepositoryAdminTest) Test(org.junit.Test)

Example 3 with ProxyConnectorRule

use of org.apache.archiva.admin.model.beans.ProxyConnectorRule in project archiva by apache.

the class ProxyConnectorRuleAdminTest method updateProxyConnectorRuleWithTwoProxyConnectors.

@Test
public void updateProxyConnectorRuleWithTwoProxyConnectors() throws Exception {
    RemoteRepository remoteRepository = new RemoteRepository(Locale.getDefault());
    remoteRepository.setId("archiva");
    remoteRepository.setName("archiva rocks");
    remoteRepository.setUrl("http://wine.org");
    remoteRepositoryAdmin.addRemoteRepository(remoteRepository, getFakeAuditInformation());
    int size = proxyConnectorRuleAdmin.getProxyConnectorRules().size();
    assertEquals(0, size);
    ProxyConnector proxyConnector1 = new ProxyConnector();
    proxyConnector1.setSourceRepoId("snapshots");
    proxyConnector1.setTargetRepoId("central");
    proxyConnectorAdmin.addProxyConnector(proxyConnector1, getFakeAuditInformation());
    ProxyConnector proxyConnector2 = new ProxyConnector();
    proxyConnector2.setSourceRepoId("snapshots");
    proxyConnector2.setTargetRepoId("archiva");
    proxyConnectorAdmin.addProxyConnector(proxyConnector2, getFakeAuditInformation());
    ProxyConnectorRule rule = new ProxyConnectorRule("org/apache/maven", ProxyConnectorRuleType.BLACK_LIST, Arrays.asList(proxyConnector1, proxyConnector2));
    try {
        proxyConnectorRuleAdmin.addProxyConnectorRule(rule, getFakeAuditInformation());
        assertEquals(size + 1, proxyConnectorRuleAdmin.getProxyConnectorRules().size());
        rule = proxyConnectorRuleAdmin.getProxyConnectorRules().get(0);
        assertEquals("org/apache/maven", rule.getPattern());
        assertEquals(2, rule.getProxyConnectors().size());
        // assertEquals( "snapshots", rule.getProxyConnectors().get( 0 ).getSourceRepoId() );
        // assertEquals( "central", rule.getProxyConnectors().get( 0 ).getTargetRepoId() );
        assertEquals(ProxyConnectorRuleType.BLACK_LIST, rule.getProxyConnectorRuleType());
        rule.setProxyConnectors(Arrays.asList(proxyConnector1));
        proxyConnectorRuleAdmin.updateProxyConnectorRule(rule, getFakeAuditInformation());
        assertEquals(size + 1, proxyConnectorRuleAdmin.getProxyConnectorRules().size());
        rule = proxyConnectorRuleAdmin.getProxyConnectorRules().get(0);
        assertEquals("org/apache/maven", rule.getPattern());
        assertEquals(1, rule.getProxyConnectors().size());
        assertEquals("snapshots", rule.getProxyConnectors().get(0).getSourceRepoId());
        assertEquals("central", rule.getProxyConnectors().get(0).getTargetRepoId());
    } finally {
        proxyConnectorRuleAdmin.deleteProxyConnectorRule(rule, getFakeAuditInformation());
        proxyConnectorAdmin.deleteProxyConnector(proxyConnector1, getFakeAuditInformation());
        proxyConnectorAdmin.deleteProxyConnector(proxyConnector2, getFakeAuditInformation());
        remoteRepositoryAdmin.deleteRemoteRepository(remoteRepository.getId(), getFakeAuditInformation());
    }
}
Also used : ProxyConnectorRule(org.apache.archiva.admin.model.beans.ProxyConnectorRule) RemoteRepository(org.apache.archiva.admin.model.beans.RemoteRepository) ProxyConnector(org.apache.archiva.admin.model.beans.ProxyConnector) AbstractRepositoryAdminTest(org.apache.archiva.admin.repository.AbstractRepositoryAdminTest) Test(org.junit.Test)

Example 4 with ProxyConnectorRule

use of org.apache.archiva.admin.model.beans.ProxyConnectorRule in project archiva by apache.

the class ProxyConnectorRuleServiceTest method addProxyConnectorRule.

@Test
public void addProxyConnectorRule() throws Exception {
    ProxyConnector proxyConnector = new ProxyConnector();
    proxyConnector.setSourceRepoId("snapshots");
    proxyConnector.setTargetRepoId("central");
    ProxyConnectorRuleService service = getProxyConnectorRuleService(authorizationHeader);
    ProxyConnectorRule rule = null;
    try {
        int size = service.getProxyConnectorRules().size();
        assertEquals(0, size);
        getProxyConnectorService().addProxyConnector(proxyConnector);
        rule = new ProxyConnectorRule("org/apache/maven", ProxyConnectorRuleType.BLACK_LIST, Arrays.asList(proxyConnector));
        service.addProxyConnectorRule(rule);
        assertEquals(size + 1, service.getProxyConnectorRules().size());
        rule = service.getProxyConnectorRules().get(0);
        assertEquals("org/apache/maven", rule.getPattern());
        assertEquals(1, rule.getProxyConnectors().size());
        assertEquals("snapshots", rule.getProxyConnectors().get(0).getSourceRepoId());
        assertEquals("central", rule.getProxyConnectors().get(0).getTargetRepoId());
        assertEquals(ProxyConnectorRuleType.BLACK_LIST, rule.getProxyConnectorRuleType());
    } finally {
        service.deleteProxyConnectorRule(rule);
        getProxyConnectorService().deleteProxyConnector(proxyConnector);
    }
}
Also used : ProxyConnectorRule(org.apache.archiva.admin.model.beans.ProxyConnectorRule) ProxyConnector(org.apache.archiva.admin.model.beans.ProxyConnector) ProxyConnectorRuleService(org.apache.archiva.rest.api.services.ProxyConnectorRuleService) Test(org.junit.Test)

Example 5 with ProxyConnectorRule

use of org.apache.archiva.admin.model.beans.ProxyConnectorRule in project archiva by apache.

the class DefaultProxyConnectorRuleService method validateProxyConnectorRule.

private void validateProxyConnectorRule(ProxyConnectorRule proxyConnectorRule) throws ArchivaRestServiceException {
    if (StringUtils.isEmpty(proxyConnectorRule.getPattern())) {
        ArchivaRestServiceException e = new ArchivaRestServiceException("pattern cannot be empty", null);
        e.setErrorKey("proxy-connector-rule.pattern.empty");
        throw e;
    }
    if (proxyConnectorRule.getProxyConnectors() == null || proxyConnectorRule.getProxyConnectors().isEmpty()) {
        ArchivaRestServiceException e = new ArchivaRestServiceException("proxyConnector rule must have proxyConnectors.", null);
        e.setErrorKey("proxy-connector-rule.pattern.connectors.empty");
        throw e;
    }
    for (ProxyConnectorRule proxyConnectorRule1 : getProxyConnectorRules()) {
        if (StringUtils.equals(proxyConnectorRule.getPattern(), proxyConnectorRule1.getPattern()) && proxyConnectorRule.getProxyConnectorRuleType() == proxyConnectorRule1.getProxyConnectorRuleType()) {
            ArchivaRestServiceException e = new ArchivaRestServiceException("same ProxyConnector rule already exists.", null);
            e.setErrorKey("proxy-connector-rule.pattern.already.exists");
            throw e;
        }
    }
}
Also used : ArchivaRestServiceException(org.apache.archiva.rest.api.services.ArchivaRestServiceException) ProxyConnectorRule(org.apache.archiva.admin.model.beans.ProxyConnectorRule)

Aggregations

ProxyConnectorRule (org.apache.archiva.admin.model.beans.ProxyConnectorRule)6 ProxyConnector (org.apache.archiva.admin.model.beans.ProxyConnector)5 Test (org.junit.Test)4 AbstractRepositoryAdminTest (org.apache.archiva.admin.repository.AbstractRepositoryAdminTest)3 RemoteRepository (org.apache.archiva.admin.model.beans.RemoteRepository)2 ArrayList (java.util.ArrayList)1 ProxyConnectorConfiguration (org.apache.archiva.configuration.ProxyConnectorConfiguration)1 ProxyConnectorRuleConfiguration (org.apache.archiva.configuration.ProxyConnectorRuleConfiguration)1 ArchivaRestServiceException (org.apache.archiva.rest.api.services.ArchivaRestServiceException)1 ProxyConnectorRuleService (org.apache.archiva.rest.api.services.ProxyConnectorRuleService)1