import org.apache.archiva.admin.model.beans.ManagedRepository; | import org.apache.archiva.admin.model.beans.ManagedRepository; | ||||
import org.apache.archiva.common.plexusbridge.PlexusSisuBridge; | import org.apache.archiva.common.plexusbridge.PlexusSisuBridge; | ||||
import org.apache.archiva.common.plexusbridge.PlexusSisuBridgeException; | import org.apache.archiva.common.plexusbridge.PlexusSisuBridgeException; | ||||
import org.apache.archiva.consumers.ConsumerException; | |||||
import org.apache.archiva.consumers.InvalidRepositoryContentConsumer; | |||||
import org.apache.archiva.consumers.KnownRepositoryContentConsumer; | |||||
import org.apache.archiva.consumers.RepositoryContentConsumer; | |||||
import org.apache.archiva.converter.RepositoryConversionException; | import org.apache.archiva.converter.RepositoryConversionException; | ||||
import org.apache.archiva.converter.legacy.LegacyRepositoryConverter; | import org.apache.archiva.converter.legacy.LegacyRepositoryConverter; | ||||
import org.apache.archiva.repository.scanner.RepositoryScanStatistics; | import org.apache.archiva.repository.scanner.RepositoryScanStatistics; | ||||
import org.apache.archiva.repository.scanner.RepositoryScanner; | import org.apache.archiva.repository.scanner.RepositoryScanner; | ||||
import org.apache.archiva.repository.scanner.RepositoryScannerException; | import org.apache.archiva.repository.scanner.RepositoryScannerException; | ||||
import org.apache.commons.io.IOUtils; | |||||
import org.apache.commons.lang.StringUtils; | import org.apache.commons.lang.StringUtils; | ||||
import org.apache.archiva.consumers.ConsumerException; | |||||
import org.apache.archiva.consumers.InvalidRepositoryContentConsumer; | |||||
import org.apache.archiva.consumers.KnownRepositoryContentConsumer; | |||||
import org.apache.archiva.consumers.RepositoryContentConsumer; | |||||
import org.apache.maven.artifact.manager.WagonManager; | import org.apache.maven.artifact.manager.WagonManager; | ||||
import org.springframework.context.support.ClassPathXmlApplicationContext; | import org.springframework.context.support.ClassPathXmlApplicationContext; | ||||
repo.setName( "Archiva CLI Provided Repo" ); | repo.setName( "Archiva CLI Provided Repo" ); | ||||
repo.setLocation( path ); | repo.setLocation( path ); | ||||
List<KnownRepositoryContentConsumer> knownConsumerList = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumerList = new ArrayList<>(); | |||||
knownConsumerList.addAll( getConsumerList( consumers ) ); | knownConsumerList.addAll( getConsumerList( consumers ) ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumerList = Collections.emptyList(); | List<InvalidRepositoryContentConsumer> invalidConsumerList = Collections.emptyList(); | ||||
List<String> ignoredContent = new ArrayList<String>(); | |||||
List<String> ignoredContent = new ArrayList<>(); | |||||
ignoredContent.addAll( Arrays.asList( RepositoryScanner.IGNORABLE_CONTENT ) ); | ignoredContent.addAll( Arrays.asList( RepositoryScanner.IGNORABLE_CONTENT ) ); | ||||
RepositoryScanner scanner = lookup( RepositoryScanner.class ); | RepositoryScanner scanner = lookup( RepositoryScanner.class ); | ||||
private List<KnownRepositoryContentConsumer> getConsumerList( String[] consumers ) | private List<KnownRepositoryContentConsumer> getConsumerList( String[] consumers ) | ||||
throws ConsumerException, PlexusSisuBridgeException | throws ConsumerException, PlexusSisuBridgeException | ||||
{ | { | ||||
List<KnownRepositoryContentConsumer> consumerList = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> consumerList = new ArrayList<>(); | |||||
Map<String, KnownRepositoryContentConsumer> availableConsumers = getConsumers(); | Map<String, KnownRepositoryContentConsumer> availableConsumers = getConsumers(); | ||||
public ArtifactCountConsumer() | public ArtifactCountConsumer() | ||||
{ | { | ||||
// TODO: shouldn't this use filetypes? | // TODO: shouldn't this use filetypes? | ||||
includes = new ArrayList<String>(); | |||||
includes = new ArrayList<>(); | |||||
includes.add( "**/*.pom" ); | includes.add( "**/*.pom" ); | ||||
includes.add( "**/*.jar" ); | includes.add( "**/*.jar" ); | ||||
includes.add( "**/*.war" ); | includes.add( "**/*.war" ); |
@Inject | @Inject | ||||
private DigesterUtils digesterUtils; | private DigesterUtils digesterUtils; | ||||
/** | |||||
* | |||||
*/ | |||||
private ModelConverter translator; | private ModelConverter translator; | ||||
/** | |||||
* | |||||
*/ | |||||
private ArtifactFactory artifactFactory; | private ArtifactFactory artifactFactory; | ||||
/** | |||||
* | |||||
*/ | |||||
private ArtifactHandlerManager artifactHandlerManager; | private ArtifactHandlerManager artifactHandlerManager; | ||||
/** | |||||
* default-value="false" | |||||
*/ | |||||
private boolean force; | private boolean force; | ||||
/** | |||||
* default-value="false" | |||||
*/ | |||||
private boolean dryrun; | private boolean dryrun; | ||||
private Map<Artifact, List<String>> warnings = new HashMap<Artifact, List<String>>(); | private Map<Artifact, List<String>> warnings = new HashMap<Artifact, List<String>>(); | ||||
List<String> messages = warnings.get( artifact ); | List<String> messages = warnings.get( artifact ); | ||||
if ( messages == null ) | if ( messages == null ) | ||||
{ | { | ||||
messages = new ArrayList<String>( 1 ); | |||||
messages = new ArrayList<>( 1 ); | |||||
} | } | ||||
messages.add( message ); | messages.add( message ); | ||||
warnings.put( artifact, messages ); | warnings.put( artifact, messages ); |
{ | { | ||||
// test multiple artifacts are converted | // test multiple artifacts are converted | ||||
List<Artifact> artifacts = new ArrayList<Artifact>(); | |||||
List<Artifact> artifacts = new ArrayList<>(); | |||||
artifacts.add( createArtifact( "test", "artifact-one", "1.0.0" ) ); | artifacts.add( createArtifact( "test", "artifact-one", "1.0.0" ) ); | ||||
artifacts.add( createArtifact( "test", "artifact-two", "1.0.0" ) ); | artifacts.add( createArtifact( "test", "artifact-two", "1.0.0" ) ); | ||||
artifacts.add( createArtifact( "test", "artifact-three", "1.0.0" ) ); | artifacts.add( createArtifact( "test", "artifact-three", "1.0.0" ) ); |
*/ | */ | ||||
import org.apache.commons.io.FileUtils; | import org.apache.commons.io.FileUtils; | ||||
import org.apache.commons.io.IOUtils; | |||||
import org.apache.commons.lang.StringUtils; | import org.apache.commons.lang.StringUtils; | ||||
import org.slf4j.Logger; | import org.slf4j.Logger; | ||||
import org.slf4j.LoggerFactory; | import org.slf4j.LoggerFactory; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileInputStream; | import java.io.FileInputStream; | ||||
import java.io.FileNotFoundException; | |||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
import java.util.List; | import java.util.List; | ||||
try (FileInputStream fis = new FileInputStream( referenceFile )) | try (FileInputStream fis = new FileInputStream( referenceFile )) | ||||
{ | { | ||||
List<Checksum> checksums = new ArrayList<Checksum>( algorithms.length ); | |||||
List<Checksum> checksums = new ArrayList<>( algorithms.length ); | |||||
// Create checksum object for each algorithm. | // Create checksum object for each algorithm. | ||||
for ( ChecksumAlgorithm checksumAlgorithm : algorithms ) | for ( ChecksumAlgorithm checksumAlgorithm : algorithms ) | ||||
{ | { | ||||
*/ | */ | ||||
public boolean fixChecksums( ChecksumAlgorithm[] algorithms ) | public boolean fixChecksums( ChecksumAlgorithm[] algorithms ) | ||||
{ | { | ||||
List<Checksum> checksums = new ArrayList<Checksum>( algorithms.length ); | |||||
List<Checksum> checksums = new ArrayList<>( algorithms.length ); | |||||
// Create checksum object for each algorithm. | // Create checksum object for each algorithm. | ||||
for ( ChecksumAlgorithm checksumAlgorithm : algorithms ) | for ( ChecksumAlgorithm checksumAlgorithm : algorithms ) | ||||
{ | { |
{ | { | ||||
Checksum checksumSha1 = new Checksum( ChecksumAlgorithm.SHA1 ); | Checksum checksumSha1 = new Checksum( ChecksumAlgorithm.SHA1 ); | ||||
Checksum checksumMd5 = new Checksum( ChecksumAlgorithm.MD5 ); | Checksum checksumMd5 = new Checksum( ChecksumAlgorithm.MD5 ); | ||||
List<Checksum> checksums = new ArrayList<Checksum>(); | |||||
List<Checksum> checksums = new ArrayList<>(); | |||||
checksums.add( checksumSha1 ); | checksums.add( checksumSha1 ); | ||||
checksums.add( checksumMd5 ); | checksums.add( checksumMd5 ); | ||||
public VersionComparator() | public VersionComparator() | ||||
{ | { | ||||
specialWords = new ArrayList<String>( 23 ); | |||||
specialWords = new ArrayList<>( 23 ); | |||||
// ids that refer to LATEST | // ids that refer to LATEST | ||||
specialWords.add( "final" ); | specialWords.add( "final" ); | ||||
int modeDigit = 1; | int modeDigit = 1; | ||||
int modeText = 2; | int modeText = 2; | ||||
List<String> parts = new ArrayList<String>(); | |||||
List<String> parts = new ArrayList<>(); | |||||
int len = version.length(); | int len = version.length(); | ||||
int i = 0; | int i = 0; | ||||
int start = 0; | int start = 0; |
* under the License. | * under the License. | ||||
*/ | */ | ||||
import junit.framework.TestCase; | |||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
import java.util.Arrays; | import java.util.Arrays; | ||||
import java.util.Collections; | import java.util.Collections; | ||||
import java.util.List; | import java.util.List; | ||||
import junit.framework.TestCase; | |||||
/** | /** | ||||
* VersionComparatorTest | * VersionComparatorTest | ||||
* | * | ||||
private void assertSort( String[] rawVersions, String[] expectedSort ) | private void assertSort( String[] rawVersions, String[] expectedSort ) | ||||
{ | { | ||||
List<String> versions = new ArrayList<String>(); | |||||
List<String> versions = new ArrayList<>(); | |||||
versions.addAll( Arrays.asList( rawVersions ) ); | versions.addAll( Arrays.asList( rawVersions ) ); | ||||
Collections.sort( versions, VersionComparator.getInstance() ); | Collections.sort( versions, VersionComparator.getInstance() ); |
// Create a copy of the list to read from (to prevent concurrent modification exceptions) | // Create a copy of the list to read from (to prevent concurrent modification exceptions) | ||||
List<ProxyConnectorConfiguration> proxyConnectorList = | List<ProxyConnectorConfiguration> proxyConnectorList = | ||||
new ArrayList<ProxyConnectorConfiguration>( config.getProxyConnectors() ); | |||||
new ArrayList<>( config.getProxyConnectors() ); | |||||
// Remove the old connector list. | // Remove the old connector list. | ||||
config.getProxyConnectors().clear(); | config.getProxyConnectors().clear(); | ||||
{ | { | ||||
List<String> knowContentConsumers = | List<String> knowContentConsumers = | ||||
new ArrayList<String>( configuration.getRepositoryScanning().getKnownContentConsumers().size() ); | |||||
new ArrayList<>( configuration.getRepositoryScanning().getKnownContentConsumers().size() ); | |||||
for ( String knowContentConsumer : configuration.getRepositoryScanning().getKnownContentConsumers() ) | for ( String knowContentConsumer : configuration.getRepositoryScanning().getKnownContentConsumers() ) | ||||
{ | { | ||||
if ( !dbConsumers.contains( knowContentConsumer ) ) | if ( !dbConsumers.contains( knowContentConsumer ) ) | ||||
if ( !configuration.getRepositoryScanning().getKnownContentConsumers().contains( "create-archiva-metadata" ) ) | if ( !configuration.getRepositoryScanning().getKnownContentConsumers().contains( "create-archiva-metadata" ) ) | ||||
{ | { | ||||
List<String> knowContentConsumers = | List<String> knowContentConsumers = | ||||
new ArrayList<String>( configuration.getRepositoryScanning().getKnownContentConsumers() ); | |||||
new ArrayList<>( configuration.getRepositoryScanning().getKnownContentConsumers() ); | |||||
knowContentConsumers.add( "create-archiva-metadata" ); | knowContentConsumers.add( "create-archiva-metadata" ); | ||||
configuration.getRepositoryScanning().setKnownContentConsumers( knowContentConsumers ); | configuration.getRepositoryScanning().setKnownContentConsumers( knowContentConsumers ); | ||||
} | } | ||||
if ( !configuration.getRepositoryScanning().getKnownContentConsumers().contains( "duplicate-artifacts" ) ) | if ( !configuration.getRepositoryScanning().getKnownContentConsumers().contains( "duplicate-artifacts" ) ) | ||||
{ | { | ||||
List<String> knowContentConsumers = | List<String> knowContentConsumers = | ||||
new ArrayList<String>( configuration.getRepositoryScanning().getKnownContentConsumers() ); | |||||
new ArrayList<>( configuration.getRepositoryScanning().getKnownContentConsumers() ); | |||||
knowContentConsumers.add( "duplicate-artifacts" ); | knowContentConsumers.add( "duplicate-artifacts" ); | ||||
configuration.getRepositoryScanning().setKnownContentConsumers( knowContentConsumers ); | configuration.getRepositoryScanning().setKnownContentConsumers( knowContentConsumers ); | ||||
} | } |
List<String> patterns = defaultTypeMap.get( filetype.getId() ); | List<String> patterns = defaultTypeMap.get( filetype.getId() ); | ||||
if ( patterns == null ) | if ( patterns == null ) | ||||
{ | { | ||||
patterns = new ArrayList<String>( filetype.getPatterns().size() ); | |||||
patterns = new ArrayList<>( filetype.getPatterns().size() ); | |||||
} | } | ||||
patterns.addAll( filetype.getPatterns() ); | patterns.addAll( filetype.getPatterns() ); | ||||
@Test | @Test | ||||
public void testSortOfAllZeros() | public void testSortOfAllZeros() | ||||
{ | { | ||||
List<ProxyConnectorConfiguration> proxies = new ArrayList<ProxyConnectorConfiguration>(); | |||||
List<ProxyConnectorConfiguration> proxies = new ArrayList<>(); | |||||
proxies.add( createConnector( "corporate", 0 ) ); | proxies.add( createConnector( "corporate", 0 ) ); | ||||
proxies.add( createConnector( "snapshots", 0 ) ); | proxies.add( createConnector( "snapshots", 0 ) ); | ||||
@Test | @Test | ||||
public void testSortNormal() | public void testSortNormal() | ||||
{ | { | ||||
List<ProxyConnectorConfiguration> proxies = new ArrayList<ProxyConnectorConfiguration>(); | |||||
List<ProxyConnectorConfiguration> proxies = new ArrayList<>(); | |||||
proxies.add( createConnector( "corporate", 3 ) ); | proxies.add( createConnector( "corporate", 3 ) ); | ||||
proxies.add( createConnector( "snapshots", 1 ) ); | proxies.add( createConnector( "snapshots", 1 ) ); | ||||
@Test | @Test | ||||
public void testSortPartial() | public void testSortPartial() | ||||
{ | { | ||||
List<ProxyConnectorConfiguration> proxies = new ArrayList<ProxyConnectorConfiguration>(); | |||||
List<ProxyConnectorConfiguration> proxies = new ArrayList<>(); | |||||
proxies.add( createConnector( "corporate", 3 ) ); | proxies.add( createConnector( "corporate", 3 ) ); | ||||
proxies.add( createConnector( "snapshots", 0 ) ); | proxies.add( createConnector( "snapshots", 0 ) ); |
private File repositoryDir; | private File repositoryDir; | ||||
private List<String> includes = new ArrayList<String>( 0 ); | |||||
private List<String> includes = new ArrayList<>( 0 ); | |||||
@Inject | @Inject | ||||
public ArtifactMissingChecksumsConsumer( ArchivaConfiguration configuration, FileTypes filetypes ) | public ArtifactMissingChecksumsConsumer( ArchivaConfiguration configuration, FileTypes filetypes ) |
private File repositoryDir; | private File repositoryDir; | ||||
private List<String> includes = new ArrayList<String>( 0 ); | |||||
private List<String> includes = new ArrayList<>( 0 ); | |||||
public String getId() | public String getId() | ||||
{ | { |
private File repositoryDir; | private File repositoryDir; | ||||
private List<String> includes = new ArrayList<String>( 3 ); | |||||
private List<String> includes = new ArrayList<>( 3 ); | |||||
private Map<String, String> extensionRenameMap = new HashMap<String, String>(); | private Map<String, String> extensionRenameMap = new HashMap<String, String>(); | ||||
private File repositoryDir; | private File repositoryDir; | ||||
private List<String> includes = new ArrayList<String>( 0 ); | |||||
private List<String> includes = new ArrayList<>( 0 ); | |||||
private long scanStartTimestamp = 0; | private long scanStartTimestamp = 0; | ||||
throws PlexusSisuBridgeException | throws PlexusSisuBridgeException | ||||
{ | { | ||||
checksum = plexusSisuBridge.lookup( ChecksumFile.class ); | checksum = plexusSisuBridge.lookup( ChecksumFile.class ); | ||||
List<Digester> allDigesters = new ArrayList<Digester>( digesterUtils.getAllDigesters() ); | |||||
includes = new ArrayList<String>( allDigesters.size() ); | |||||
List<Digester> allDigesters = new ArrayList<>( digesterUtils.getAllDigesters() ); | |||||
includes = new ArrayList<>( allDigesters.size() ); | |||||
for ( Digester digester : allDigesters ) | for ( Digester digester : allDigesters ) | ||||
{ | { | ||||
includes.add( "**/*" + digester.getFilenameExtension() ); | includes.add( "**/*" + digester.getFilenameExtension() ); |
reference.setArtifactId( artifactRef.getArtifactId() ); | reference.setArtifactId( artifactRef.getArtifactId() ); | ||||
// Gether the released versions | // Gether the released versions | ||||
List<String> releasedVersions = new ArrayList<String>(); | |||||
List<String> releasedVersions = new ArrayList<>(); | |||||
List<ManagedRepository> repos = managedRepositoryAdmin.getManagedRepositories(); | List<ManagedRepository> repos = managedRepositoryAdmin.getManagedRepositories(); | ||||
for ( ManagedRepository repo : repos ) | for ( ManagedRepository repo : repos ) |
reference.setArtifactId( artifact.getArtifactId() ); | reference.setArtifactId( artifact.getArtifactId() ); | ||||
reference.setVersion( artifact.getVersion() ); | reference.setVersion( artifact.getVersion() ); | ||||
List<String> versions = new ArrayList<String>( repository.getVersions( reference ) ); | |||||
List<String> versions = new ArrayList<>( repository.getVersions( reference ) ); | |||||
Collections.sort( versions, VersionComparator.getInstance() ); | Collections.sort( versions, VersionComparator.getInstance() ); | ||||
*/ | */ | ||||
private String description = "Purge repository of old snapshots"; | private String description = "Purge repository of old snapshots"; | ||||
/** | |||||
* | |||||
*/ | |||||
@Inject | @Inject | ||||
@Named( value = "archivaConfiguration#default" ) | @Named( value = "archivaConfiguration#default" ) | ||||
private ArchivaConfiguration configuration; | private ArchivaConfiguration configuration; | ||||
@Inject | @Inject | ||||
private ManagedRepositoryAdmin managedRepositoryAdmin; | private ManagedRepositoryAdmin managedRepositoryAdmin; | ||||
/** | |||||
* | |||||
*/ | |||||
@Inject | @Inject | ||||
@Named( value = "repositoryContentFactory#default" ) | @Named( value = "repositoryContentFactory#default" ) | ||||
private RepositoryContentFactory repositoryContentFactory; | private RepositoryContentFactory repositoryContentFactory; | ||||
/** | |||||
* | |||||
*/ | |||||
@Inject | @Inject | ||||
private MetadataTools metadataTools; | private MetadataTools metadataTools; | ||||
/** | |||||
* | |||||
*/ | |||||
@Inject | @Inject | ||||
@Named( value = "fileTypes" ) | @Named( value = "fileTypes" ) | ||||
private FileTypes filetypes; | private FileTypes filetypes; | ||||
private List<String> includes = new ArrayList<String>(); | |||||
private List<String> includes = new ArrayList<>(); | |||||
private RepositoryPurge repoPurge; | private RepositoryPurge repoPurge; | ||||
reference.setArtifactId( artifact.getArtifactId() ); | reference.setArtifactId( artifact.getArtifactId() ); | ||||
reference.setVersion( artifact.getVersion() ); | reference.setVersion( artifact.getVersion() ); | ||||
List<String> versions = new ArrayList<String>( repository.getVersions( reference ) ); | |||||
List<String> versions = new ArrayList<>( repository.getVersions( reference ) ); | |||||
Collections.sort( versions, VersionComparator.getInstance() ); | Collections.sort( versions, VersionComparator.getInstance() ); | ||||
private NexusIndexer nexusIndexer; | private NexusIndexer nexusIndexer; | ||||
private List<String> includes = new ArrayList<String>( 0 ); | |||||
private List<String> includes = new ArrayList<>( 0 ); | |||||
private ManagedRepository repository; | private ManagedRepository repository; | ||||
extends AbstractMonitoredConsumer | extends AbstractMonitoredConsumer | ||||
implements KnownRepositoryContentConsumer, RegistryListener | implements KnownRepositoryContentConsumer, RegistryListener | ||||
{ | { | ||||
/** | |||||
* default-value="create-archiva-metadata" | |||||
*/ | |||||
private String id = "create-archiva-metadata"; | private String id = "create-archiva-metadata"; | ||||
/** | |||||
* default-value="Create basic metadata for Archiva to be able to reference the artifact" | |||||
*/ | |||||
private String description = "Create basic metadata for Archiva to be able to reference the artifact"; | private String description = "Create basic metadata for Archiva to be able to reference the artifact"; | ||||
/** | |||||
*/ | |||||
@Inject | @Inject | ||||
private ArchivaConfiguration configuration; | private ArchivaConfiguration configuration; | ||||
/** | |||||
*/ | |||||
@Inject | @Inject | ||||
private FileTypes filetypes; | private FileTypes filetypes; | ||||
private Date whenGathered; | private Date whenGathered; | ||||
private List<String> includes = new ArrayList<String>( 0 ); | |||||
private List<String> includes = new ArrayList<>( 0 ); | |||||
/** | /** | ||||
* FIXME: this could be multiple implementations and needs to be configured. | * FIXME: this could be multiple implementations and needs to be configured. |
legacyConverterConsumer.setExcludes( fileExclusionPatterns ); | legacyConverterConsumer.setExcludes( fileExclusionPatterns ); | ||||
legacyConverterConsumer.setDestinationRepository( repository ); | legacyConverterConsumer.setDestinationRepository( repository ); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>( 1 ); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>( 1 ); | |||||
knownConsumers.add( legacyConverterConsumer ); | knownConsumers.add( legacyConverterConsumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = Collections.emptyList(); | List<InvalidRepositoryContentConsumer> invalidConsumers = Collections.emptyList(); |
public LegacyConverterArtifactConsumer( PlexusSisuBridge plexusSisuBridge ) | public LegacyConverterArtifactConsumer( PlexusSisuBridge plexusSisuBridge ) | ||||
throws PlexusSisuBridgeException | throws PlexusSisuBridgeException | ||||
{ | { | ||||
includes = new ArrayList<String>( 3 ); | |||||
includes = new ArrayList<>( 3 ); | |||||
includes.add( "**/*.jar" ); | includes.add( "**/*.jar" ); | ||||
includes.add( "**/*.ear" ); | includes.add( "**/*.ear" ); | ||||
includes.add( "**/*.war" ); | includes.add( "**/*.war" ); |
{ | { | ||||
File legacyRepoDir = new File( sourceRepository.getBasedir() ); | File legacyRepoDir = new File( sourceRepository.getBasedir() ); | ||||
File destRepoDir = new File( targetRepository.getLocation() ); | File destRepoDir = new File( targetRepository.getLocation() ); | ||||
List<String> excludes = new ArrayList<String>(); | |||||
List<String> excludes = new ArrayList<>(); | |||||
repositoryConverter.convertLegacyRepository( legacyRepoDir, destRepoDir, excludes ); | repositoryConverter.convertLegacyRepository( legacyRepoDir, destRepoDir, excludes ); | ||||
} | } | ||||
} | } |
private List<IndexingContext> getIndexingContexts( List<String> ids ) | private List<IndexingContext> getIndexingContexts( List<String> ids ) | ||||
{ | { | ||||
List<IndexingContext> contexts = new ArrayList<IndexingContext>( ids.size() ); | |||||
List<IndexingContext> contexts = new ArrayList<>( ids.size() ); | |||||
for ( String id : ids ) | for ( String id : ids ) | ||||
{ | { | ||||
} | } | ||||
} | } | ||||
return new ArrayList<String>( indexingContextIds ); | |||||
return new ArrayList<>( indexingContextIds ); | |||||
} | } | ||||
/** | /** | ||||
* repositories | * repositories | ||||
*/ | */ | ||||
private List<String> repositories = new ArrayList<String>(); | |||||
private List<String> repositories = new ArrayList<>(); | |||||
/** | /** |
private String repositoryId = ""; | private String repositoryId = ""; | ||||
private List<String> versions = new ArrayList<String>(); | |||||
private List<String> versions = new ArrayList<>(); | |||||
private String packaging; | private String packaging; | ||||
*/ | */ | ||||
public List<SearchResultHit> getHits() | public List<SearchResultHit> getHits() | ||||
{ | { | ||||
return new ArrayList<SearchResultHit>( hits.values() ); | |||||
return new ArrayList<>( hits.values() ); | |||||
} | } | ||||
/** | /** |
private void createSimpleIndex( boolean scan ) | private void createSimpleIndex( boolean scan ) | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<File> files = new ArrayList<File>(); | |||||
List<File> files = new ArrayList<>(); | |||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | ||||
+ "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | + "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | ||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | ||||
private void createIndexContainingMoreArtifacts( boolean scan ) | private void createIndexContainingMoreArtifacts( boolean scan ) | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<File> files = new ArrayList<File>(); | |||||
List<File> files = new ArrayList<>(); | |||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | ||||
+ "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | + "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | ||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | ||||
private void createIndexContainingMultipleArtifactsSameVersion( boolean scan ) | private void createIndexContainingMultipleArtifactsSameVersion( boolean scan ) | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<File> files = new ArrayList<File>(); | |||||
List<File> files = new ArrayList<>(); | |||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | ||||
+ "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | + "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | ||||
{ | { | ||||
createIndexContainingMultipleArtifactsSameVersion( false ); | createIndexContainingMultipleArtifactsSameVersion( false ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
// search artifactId | // search artifactId | ||||
{ | { | ||||
createIndexContainingMultipleArtifactsSameVersion( true ); | createIndexContainingMultipleArtifactsSameVersion( true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
// search artifactId | // search artifactId | ||||
{ | { | ||||
createSimpleIndex( false ); | createSimpleIndex( false ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | ||||
{ | { | ||||
createSimpleIndex( true ); | createSimpleIndex( true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
// page 1 | // page 1 | ||||
{ | { | ||||
createSimpleIndex( true ); | createSimpleIndex( true ); | ||||
List<File> files = new ArrayList<File>(); | |||||
List<File> files = new ArrayList<>(); | |||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | ||||
+ "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | + "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | ||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | ||||
+ "/org/apache/archiva/archiva-search/1.1/archiva-search-1.1.jar" ) ); | + "/org/apache/archiva/archiva-search/1.1/archiva-search-1.1.jar" ) ); | ||||
createIndex( TEST_REPO_2, files, false ); | createIndex( TEST_REPO_2, files, false ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
selectedRepos.add( TEST_REPO_2 ); | selectedRepos.add( TEST_REPO_2 ); | ||||
{ | { | ||||
createSimpleIndex( false ); | createSimpleIndex( false ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | ||||
public void testNoIndexFound() | public void testNoIndexFound() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | ||||
public void testRepositoryNotFound() | public void testRepositoryNotFound() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( "non-existing-repo" ); | selectedRepos.add( "non-existing-repo" ); | ||||
EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | ||||
{ | { | ||||
createSimpleIndex( true ); | createSimpleIndex( true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
List<String> previousSearchTerms = new ArrayList<String>(); | |||||
List<String> previousSearchTerms = new ArrayList<>(); | |||||
previousSearchTerms.add( "archiva-test" ); | previousSearchTerms.add( "archiva-test" ); | ||||
EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | EasyMock.expect( archivaConfig.getConfiguration() ).andReturn( config ).times( 1, 2 ); | ||||
public void testAdvancedSearch() | public void testAdvancedSearch() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<File> files = new ArrayList<File>(); | |||||
List<File> files = new ArrayList<>(); | |||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | ||||
+ "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | + "/org/apache/archiva/archiva-search/1.0/archiva-search-1.0.jar" ) ); | ||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_2 | ||||
+ "/org/apache/archiva/archiva-search/1.1/archiva-search-1.1.jar" ) ); | + "/org/apache/archiva/archiva-search/1.1/archiva-search-1.1.jar" ) ); | ||||
createIndex( TEST_REPO_2, files, false ); | createIndex( TEST_REPO_2, files, false ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_2 ); | selectedRepos.add( TEST_REPO_2 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
{ | { | ||||
createIndexContainingMoreArtifacts( false ); | createIndexContainingMoreArtifacts( false ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
public void testAdvancedSearchArtifactIdHasNumericChar() | public void testAdvancedSearchArtifactIdHasNumericChar() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<File> files = new ArrayList<File>(); | |||||
List<File> files = new ArrayList<>(); | |||||
files.add( new File( FileUtil.getBasedir(), | files.add( new File( FileUtil.getBasedir(), | ||||
"src/test/" + TEST_REPO_1 + "/com/artifactid-numeric/1.0/artifactid-numeric-1.0.jar" ) ); | "src/test/" + TEST_REPO_1 + "/com/artifactid-numeric/1.0/artifactid-numeric-1.0.jar" ) ); | ||||
files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | files.add( new File( FileUtil.getBasedir(), "src/test/" + TEST_REPO_1 | ||||
+ "/com/artifactid-numeric123/1.0/artifactid-numeric123-1.0.jar" ) ); | + "/com/artifactid-numeric123/1.0/artifactid-numeric123-1.0.jar" ) ); | ||||
createIndex( TEST_REPO_1, files, true ); | createIndex( TEST_REPO_1, files, true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
public void testAdvancedSearchSearchFieldsAreNull() | public void testAdvancedSearchSearchFieldsAreNull() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
public void testAdvancedSearchSearchFieldsAreBlank() | public void testAdvancedSearchSearchFieldsAreBlank() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
{ | { | ||||
createSimpleIndex( true ); | createSimpleIndex( true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
{ | { | ||||
createIndexContainingMoreArtifacts( true ); | createIndexContainingMoreArtifacts( true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
{ | { | ||||
createSimpleIndex( true ); | createSimpleIndex( true ); | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); | ||||
public void testAdvancedSearchNoIndexFound() | public void testAdvancedSearchNoIndexFound() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> selectedRepos = new ArrayList<String>(); | |||||
List<String> selectedRepos = new ArrayList<>(); | |||||
selectedRepos.add( TEST_REPO_1 ); | selectedRepos.add( TEST_REPO_1 ); | ||||
SearchFields searchFields = new SearchFields(); | SearchFields searchFields = new SearchFields(); |
implements Serializable | implements Serializable | ||||
{ | { | ||||
private List<TreeEntry> childs = new ArrayList<TreeEntry>(); | |||||
private List<TreeEntry> childs = new ArrayList<>(); | |||||
private Artifact artifact; | private Artifact artifact; | ||||
return null; | return null; | ||||
} | } | ||||
List<ArtifactReference> ret = new ArrayList<ArtifactReference>( artifactReferenceList.size() ); | |||||
List<ArtifactReference> ret = new ArrayList<>( artifactReferenceList.size() ); | |||||
for ( ArtifactReference ref : artifactReferenceList ) | for ( ArtifactReference ref : artifactReferenceList ) | ||||
{ | { | ||||
return null; | return null; | ||||
} | } | ||||
List<String> ret = new ArrayList<String>( simple.size() ); | |||||
List<String> ret = new ArrayList<>( simple.size() ); | |||||
for ( String txt : simple ) | for ( String txt : simple ) | ||||
{ | { |
*/ | */ | ||||
public static final String ONCE = "once"; | public static final String ONCE = "once"; | ||||
private List<String> options = new ArrayList<String>( 5 ); | |||||
private List<String> options = new ArrayList<>( 5 ); | |||||
public AbstractUpdatePolicy() | public AbstractUpdatePolicy() | ||||
{ | { |
*/ | */ | ||||
public static final String YES = "yes"; | public static final String YES = "yes"; | ||||
/** | |||||
* | |||||
*/ | |||||
@Inject | @Inject | ||||
private UrlFailureCache urlFailureCache; | private UrlFailureCache urlFailureCache; | ||||
private List<String> options = new ArrayList<String>( 2 ); | |||||
private List<String> options = new ArrayList<>( 2 ); | |||||
public CachedFailuresPolicy() | public CachedFailuresPolicy() | ||||
{ | { |
private ChecksumAlgorithm[] algorithms = new ChecksumAlgorithm[]{ ChecksumAlgorithm.SHA1, ChecksumAlgorithm.MD5 }; | private ChecksumAlgorithm[] algorithms = new ChecksumAlgorithm[]{ ChecksumAlgorithm.SHA1, ChecksumAlgorithm.MD5 }; | ||||
private List<String> options = new ArrayList<String>( 3 ); | |||||
private List<String> options = new ArrayList<>( 3 ); | |||||
public ChecksumPolicy() | public ChecksumPolicy() | ||||
{ | { |
*/ | */ | ||||
public static final String IGNORE = "ignore"; | public static final String IGNORE = "ignore"; | ||||
private List<String> options = new ArrayList<String>( 3 ); | |||||
private List<String> options = new ArrayList<>( 3 ); | |||||
public PropagateErrorsDownloadPolicy() | public PropagateErrorsDownloadPolicy() | ||||
{ | { |
*/ | */ | ||||
public static final String NOT_PRESENT = "artifact not already present"; | public static final String NOT_PRESENT = "artifact not already present"; | ||||
private List<String> options = new ArrayList<String>( 2 ); | |||||
private List<String> options = new ArrayList<>( 2 ); | |||||
public PropagateErrorsOnUpdateDownloadPolicy() | public PropagateErrorsOnUpdateDownloadPolicy() | ||||
{ | { |
connector.setDisabled( proxyConfig.isDisabled() ); | connector.setDisabled( proxyConfig.isDisabled() ); | ||||
// Copy any blacklist patterns. | // Copy any blacklist patterns. | ||||
List<String> blacklist = new ArrayList<String>( 0 ); | |||||
List<String> blacklist = new ArrayList<>( 0 ); | |||||
if ( CollectionUtils.isNotEmpty( proxyConfig.getBlackListPatterns() ) ) | if ( CollectionUtils.isNotEmpty( proxyConfig.getBlackListPatterns() ) ) | ||||
{ | { | ||||
blacklist.addAll( proxyConfig.getBlackListPatterns() ); | blacklist.addAll( proxyConfig.getBlackListPatterns() ); | ||||
connector.setBlacklist( blacklist ); | connector.setBlacklist( blacklist ); | ||||
// Copy any whitelist patterns. | // Copy any whitelist patterns. | ||||
List<String> whitelist = new ArrayList<String>( 0 ); | |||||
List<String> whitelist = new ArrayList<>( 0 ); | |||||
if ( CollectionUtils.isNotEmpty( proxyConfig.getWhiteListPatterns() ) ) | if ( CollectionUtils.isNotEmpty( proxyConfig.getWhiteListPatterns() ) ) | ||||
{ | { | ||||
whitelist.addAll( proxyConfig.getWhiteListPatterns() ); | whitelist.addAll( proxyConfig.getWhiteListPatterns() ); | ||||
if ( connectors == null ) | if ( connectors == null ) | ||||
{ | { | ||||
// Create if we are the first. | // Create if we are the first. | ||||
connectors = new ArrayList<ProxyConnector>( 1 ); | |||||
connectors = new ArrayList<>( 1 ); | |||||
} | } | ||||
// Add the connector. | // Add the connector. | ||||
List<ProxyConnectorRuleConfiguration> all ) | List<ProxyConnectorRuleConfiguration> all ) | ||||
{ | { | ||||
List<ProxyConnectorRuleConfiguration> proxyConnectorRuleConfigurations = | List<ProxyConnectorRuleConfiguration> proxyConnectorRuleConfigurations = | ||||
new ArrayList<ProxyConnectorRuleConfiguration>(); | |||||
new ArrayList<>(); | |||||
for ( ProxyConnectorRuleConfiguration proxyConnectorRuleConfiguration : all ) | for ( ProxyConnectorRuleConfiguration proxyConnectorRuleConfiguration : all ) | ||||
{ | { |
config = | config = | ||||
(MockConfiguration) applicationContext.getBean( "archivaConfiguration#mock", ArchivaConfiguration.class ); | (MockConfiguration) applicationContext.getBean( "archivaConfiguration#mock", ArchivaConfiguration.class ); | ||||
config.getConfiguration().setManagedRepositories( new ArrayList<ManagedRepositoryConfiguration>() ); | |||||
config.getConfiguration().setRemoteRepositories( new ArrayList<RemoteRepositoryConfiguration>() ); | |||||
config.getConfiguration().setProxyConnectors( new ArrayList<ProxyConnectorConfiguration>() ); | |||||
config.getConfiguration().setManagedRepositories( new ArrayList<>() ); | |||||
config.getConfiguration().setRemoteRepositories( new ArrayList<>() ); | |||||
config.getConfiguration().setProxyConnectors( new ArrayList<>() ); | |||||
// Setup source repository (using default layout) | // Setup source repository (using default layout) | ||||
String name = getClass().getSimpleName(); | String name = getClass().getSimpleName(); |
String requestedResource = "org/apache/maven/test/get-default-metadata-nonexistant/maven-metadata.xml"; | String requestedResource = "org/apache/maven/test/get-default-metadata-nonexistant/maven-metadata.xml"; | ||||
setupTestableManagedRepository( requestedResource ); | setupTestableManagedRepository( requestedResource ); | ||||
config.getConfiguration().setProxyConnectors( new ArrayList<ProxyConnectorConfiguration>( ) ); | |||||
config.getConfiguration().setProxyConnectors( new ArrayList<>( ) ); | |||||
assertResourceNotFound( requestedResource ); | assertResourceNotFound( requestedResource ); | ||||
String requestedResource = "org/apache/maven/test/get-project-metadata/maven-metadata.xml"; | String requestedResource = "org/apache/maven/test/get-project-metadata/maven-metadata.xml"; | ||||
setupTestableManagedRepository( requestedResource ); | setupTestableManagedRepository( requestedResource ); | ||||
config.getConfiguration().setProxyConnectors( new ArrayList<ProxyConnectorConfiguration>( ) ); | |||||
config.getConfiguration().setProxyConnectors( new ArrayList<>( ) ); | |||||
assertResourceExists( requestedResource ); | assertResourceExists( requestedResource ); | ||||
setupTestableManagedRepository( requestedResource ); | setupTestableManagedRepository( requestedResource ); | ||||
config.getConfiguration().setProxyConnectors( new ArrayList<ProxyConnectorConfiguration>( ) ); | |||||
config.getConfiguration().setProxyConnectors( new ArrayList<>( ) ); | |||||
// Configure Connector (usually done within archiva.xml configuration) | // Configure Connector (usually done within archiva.xml configuration) | ||||
saveConnector( ID_DEFAULT_MANAGED, ID_PROXIED1, ChecksumPolicy.FIX, ReleasesPolicy.ALWAYS, | saveConnector( ID_DEFAULT_MANAGED, ID_PROXIED1, ChecksumPolicy.FIX, ReleasesPolicy.ALWAYS, | ||||
SnapshotsPolicy.ALWAYS, CachedFailuresPolicy.NO, false ); | SnapshotsPolicy.ALWAYS, CachedFailuresPolicy.NO, false ); |
{ | { | ||||
if ( this.blackListPatterns == null ) | if ( this.blackListPatterns == null ) | ||||
{ | { | ||||
this.blackListPatterns = new ArrayList<String>( 0 ); | |||||
this.blackListPatterns = new ArrayList<>( 0 ); | |||||
} | } | ||||
return this.blackListPatterns; | return this.blackListPatterns; | ||||
{ | { | ||||
if ( this.whiteListPatterns == null ) | if ( this.whiteListPatterns == null ) | ||||
{ | { | ||||
this.whiteListPatterns = new ArrayList<String>( 0 ); | |||||
this.whiteListPatterns = new ArrayList<>( 0 ); | |||||
} | } | ||||
return this.whiteListPatterns; | return this.whiteListPatterns; | ||||
public List<PropertyEntry> getPoliciesEntries() | public List<PropertyEntry> getPoliciesEntries() | ||||
{ | { | ||||
policiesEntries = new ArrayList<PropertyEntry>( getPolicies().size() ); | |||||
policiesEntries = new ArrayList<>( getPolicies().size() ); | |||||
for ( Map.Entry<String, String> entry : getPolicies().entrySet() ) | for ( Map.Entry<String, String> entry : getPolicies().entrySet() ) | ||||
{ | { | ||||
policiesEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | policiesEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | ||||
public List<PropertyEntry> getPropertiesEntries() | public List<PropertyEntry> getPropertiesEntries() | ||||
{ | { | ||||
propertiesEntries = new ArrayList<PropertyEntry>( getProperties().size() ); | |||||
propertiesEntries = new ArrayList<>( getProperties().size() ); | |||||
for ( Map.Entry<String, String> entry : getProperties().entrySet() ) | for ( Map.Entry<String, String> entry : getProperties().entrySet() ) | ||||
{ | { | ||||
propertiesEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | propertiesEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); |
{ | { | ||||
if ( patterns == null ) | if ( patterns == null ) | ||||
{ | { | ||||
this.patterns = new ArrayList<String>( 0 ); | |||||
this.patterns = new ArrayList<>( 0 ); | |||||
} | } | ||||
return patterns; | return patterns; | ||||
} | } |
public List<PropertyEntry> getExtraPropertiesEntries() | public List<PropertyEntry> getExtraPropertiesEntries() | ||||
{ | { | ||||
extraPropertiesEntries = new ArrayList<PropertyEntry>( getExtraProperties().size() ); | |||||
extraPropertiesEntries = new ArrayList<>( getExtraProperties().size() ); | |||||
for ( Map.Entry<String, String> entry : getExtraProperties().entrySet() ) | for ( Map.Entry<String, String> entry : getExtraProperties().entrySet() ) | ||||
{ | { | ||||
extraPropertiesEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | extraPropertiesEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); |
{ | { | ||||
if ( this.proxyConnectors == null ) | if ( this.proxyConnectors == null ) | ||||
{ | { | ||||
this.proxyConnectors = new ArrayList<ProxyConnector>(); | |||||
this.proxyConnectors = new ArrayList<>(); | |||||
} | } | ||||
return proxyConnectors; | return proxyConnectors; | ||||
} | } |
/** | /** | ||||
* Field userManagerImpls. | * Field userManagerImpls. | ||||
*/ | */ | ||||
private List<String> userManagerImpls = new ArrayList<String>(); | |||||
private List<String> userManagerImpls = new ArrayList<>(); | |||||
/** | /** | ||||
* Field rbacManagerImpls. | * Field rbacManagerImpls. | ||||
*/ | */ | ||||
private java.util.List<String> rbacManagerImpls = new ArrayList<String>(); | |||||
private java.util.List<String> rbacManagerImpls = new ArrayList<>(); | |||||
private LdapConfiguration ldapConfiguration; | private LdapConfiguration ldapConfiguration; | ||||
public List<PropertyEntry> getExtraParametersEntries() | public List<PropertyEntry> getExtraParametersEntries() | ||||
{ | { | ||||
this.extraParametersEntries = new ArrayList<PropertyEntry>(); | |||||
this.extraParametersEntries = new ArrayList<>(); | |||||
for ( Map.Entry<String, String> entry : getExtraParameters().entrySet() ) | for ( Map.Entry<String, String> entry : getExtraParameters().entrySet() ) | ||||
{ | { | ||||
this.extraParametersEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | this.extraParametersEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | ||||
public List<PropertyEntry> getExtraHeadersEntries() | public List<PropertyEntry> getExtraHeadersEntries() | ||||
{ | { | ||||
this.extraHeadersEntries = new ArrayList<PropertyEntry>(); | |||||
this.extraHeadersEntries = new ArrayList<>(); | |||||
for ( Map.Entry<String, String> entry : getExtraHeaders().entrySet() ) | for ( Map.Entry<String, String> entry : getExtraHeaders().entrySet() ) | ||||
{ | { | ||||
this.extraHeadersEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); | this.extraHeadersEntries.add( new PropertyEntry( entry.getKey(), entry.getValue() ) ); |
{ | { | ||||
if ( this.repositories == null ) | if ( this.repositories == null ) | ||||
{ | { | ||||
this.repositories = new ArrayList<String>( 0 ); | |||||
this.repositories = new ArrayList<>( 0 ); | |||||
} | } | ||||
return this.repositories; | return this.repositories; |
protected Logger log = LoggerFactory.getLogger( getClass() ); | protected Logger log = LoggerFactory.getLogger( getClass() ); | ||||
@Inject | @Inject | ||||
private List<AuditListener> auditListeners = new ArrayList<AuditListener>(); | |||||
private List<AuditListener> auditListeners = new ArrayList<>(); | |||||
@Inject | @Inject | ||||
private RepositoryCommonValidator repositoryCommonValidator; | private RepositoryCommonValidator repositoryCommonValidator; |
public List<LegacyArtifactPath> getLegacyArtifactPaths() | public List<LegacyArtifactPath> getLegacyArtifactPaths() | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
List<LegacyArtifactPath> legacyArtifactPaths = new ArrayList<LegacyArtifactPath>( | |||||
List<LegacyArtifactPath> legacyArtifactPaths = new ArrayList<>( | |||||
getArchivaConfiguration().getConfiguration().getLegacyArtifactPaths().size() ); | getArchivaConfiguration().getConfiguration().getLegacyArtifactPaths().size() ); | ||||
for ( org.apache.archiva.configuration.LegacyArtifactPath legacyArtifactPath : getArchivaConfiguration().getConfiguration().getLegacyArtifactPaths() ) | for ( org.apache.archiva.configuration.LegacyArtifactPath legacyArtifactPath : getArchivaConfiguration().getConfiguration().getLegacyArtifactPaths() ) | ||||
{ | { | ||||
{ | { | ||||
return Collections.emptyList(); | return Collections.emptyList(); | ||||
} | } | ||||
List<FileType> fileTypes = new ArrayList<FileType>( configFileTypes.size() ); | |||||
List<FileType> fileTypes = new ArrayList<>( configFileTypes.size() ); | |||||
for ( org.apache.archiva.configuration.FileType fileType : configFileTypes ) | for ( org.apache.archiva.configuration.FileType fileType : configFileTypes ) | ||||
{ | { | ||||
fileTypes.add( getModelMapper().map( fileType, FileType.class ) ); | fileTypes.add( getModelMapper().map( fileType, FileType.class ) ); | ||||
public List<String> getKnownContentConsumers() | public List<String> getKnownContentConsumers() | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
return new ArrayList<String>( | |||||
return new ArrayList<>( | |||||
getArchivaConfiguration().getConfiguration().getRepositoryScanning().getKnownContentConsumers() ); | getArchivaConfiguration().getConfiguration().getRepositoryScanning().getKnownContentConsumers() ); | ||||
} | } | ||||
public List<String> getInvalidContentConsumers() | public List<String> getInvalidContentConsumers() | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
return new ArrayList<String>( | |||||
return new ArrayList<>( | |||||
getArchivaConfiguration().getConfiguration().getRepositoryScanning().getInvalidContentConsumers() ); | getArchivaConfiguration().getConfiguration().getRepositoryScanning().getInvalidContentConsumers() ); | ||||
} | } | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
List<RepositoryGroup> repositoriesGroups = | List<RepositoryGroup> repositoriesGroups = | ||||
new ArrayList<RepositoryGroup>( getArchivaConfiguration().getConfiguration().getRepositoryGroups().size() ); | |||||
new ArrayList<>( getArchivaConfiguration().getConfiguration().getRepositoryGroups().size() ); | |||||
for ( RepositoryGroupConfiguration repositoryGroupConfiguration : getArchivaConfiguration().getConfiguration().getRepositoryGroups() ) | for ( RepositoryGroupConfiguration repositoryGroupConfiguration : getArchivaConfiguration().getConfiguration().getRepositoryGroups() ) | ||||
{ | { | ||||
java.util.List<String> repos = map.get( groupId ); | java.util.List<String> repos = map.get( groupId ); | ||||
if ( repos == null ) | if ( repos == null ) | ||||
{ | { | ||||
repos = new ArrayList<String>(); | |||||
repos = new ArrayList<>(); | |||||
map.put( groupId, repos ); | map.put( groupId, repos ); | ||||
} | } | ||||
repos.add( repo.getId() ); | repos.add( repo.getId() ); | ||||
java.util.List<String> groups = map.get( repositoryId ); | java.util.List<String> groups = map.get( repositoryId ); | ||||
if ( groups == null ) | if ( groups == null ) | ||||
{ | { | ||||
groups = new ArrayList<String>(); | |||||
groups = new ArrayList<>(); | |||||
map.put( repositoryId, groups ); | map.put( repositoryId, groups ); | ||||
} | } | ||||
groups.add( group.getId() ); | groups.add( group.getId() ); |
// olamy: copy list for reading as a unit test in webapp fail with ConcurrentModificationException | // olamy: copy list for reading as a unit test in webapp fail with ConcurrentModificationException | ||||
List<ProxyConnectorConfiguration> proxyConnectors = | List<ProxyConnectorConfiguration> proxyConnectors = | ||||
new ArrayList<ProxyConnectorConfiguration>( config.getProxyConnectors() ); | |||||
new ArrayList<>( config.getProxyConnectors() ); | |||||
for ( ProxyConnectorConfiguration proxyConnector : proxyConnectors ) | for ( ProxyConnectorConfiguration proxyConnector : proxyConnectors ) | ||||
{ | { | ||||
if ( StringUtils.equals( proxyConnector.getSourceRepoId(), repository.getId() ) ) | if ( StringUtils.equals( proxyConnector.getSourceRepoId(), repository.getId() ) ) | ||||
// copy to prevent UnsupportedOperationException | // copy to prevent UnsupportedOperationException | ||||
RepositoryGroupConfiguration repositoryGroupConfiguration = | RepositoryGroupConfiguration repositoryGroupConfiguration = | ||||
config.findRepositoryGroupById( repoGroup ); | config.findRepositoryGroupById( repoGroup ); | ||||
List<String> repos = new ArrayList<String>( repositoryGroupConfiguration.getRepositories() ); | |||||
List<String> repos = new ArrayList<>( repositoryGroupConfiguration.getRepositories() ); | |||||
config.removeRepositoryGroup( repositoryGroupConfiguration ); | config.removeRepositoryGroup( repositoryGroupConfiguration ); | ||||
repos.remove( repository.getId() ); | repos.remove( repository.getId() ); | ||||
repositoryGroupConfiguration.setRepositories( repos ); | repositoryGroupConfiguration.setRepositories( repos ); |
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
List<NetworkProxy> networkProxies = | List<NetworkProxy> networkProxies = | ||||
new ArrayList<NetworkProxy>( getArchivaConfiguration().getConfiguration().getNetworkProxies().size() ); | |||||
new ArrayList<>( getArchivaConfiguration().getConfiguration().getNetworkProxies().size() ); | |||||
for ( NetworkProxyConfiguration networkProxyConfiguration : getArchivaConfiguration().getConfiguration().getNetworkProxies() ) | for ( NetworkProxyConfiguration networkProxyConfiguration : getArchivaConfiguration().getConfiguration().getNetworkProxies() ) | ||||
{ | { | ||||
networkProxies.add( getNetworkProxy( networkProxyConfiguration ) ); | networkProxies.add( getNetworkProxy( networkProxyConfiguration ) ); |
{ | { | ||||
List<ProxyConnectorConfiguration> proxyConnectorConfigurations = | List<ProxyConnectorConfiguration> proxyConnectorConfigurations = | ||||
getArchivaConfiguration().getConfiguration().getProxyConnectors(); | getArchivaConfiguration().getConfiguration().getProxyConnectors(); | ||||
List<ProxyConnector> proxyConnectors = new ArrayList<ProxyConnector>( proxyConnectorConfigurations.size() ); | |||||
List<ProxyConnector> proxyConnectors = new ArrayList<>( proxyConnectorConfigurations.size() ); | |||||
for ( ProxyConnectorConfiguration configuration : proxyConnectorConfigurations ) | for ( ProxyConnectorConfiguration configuration : proxyConnectorConfigurations ) | ||||
{ | { | ||||
proxyConnectors.add( getProxyConnector( configuration ) ); | proxyConnectors.add( getProxyConnector( configuration ) ); | ||||
{ | { | ||||
if ( patterns != null ) | if ( patterns != null ) | ||||
{ | { | ||||
List<String> rawPatterns = new ArrayList<String>( patterns.size() ); | |||||
List<String> rawPatterns = new ArrayList<>( patterns.size() ); | |||||
for ( String pattern : patterns ) | for ( String pattern : patterns ) | ||||
{ | { | ||||
rawPatterns.add( StringUtils.replace( pattern, "\\\\", "\\" ) ); | rawPatterns.add( StringUtils.replace( pattern, "\\\\", "\\" ) ); | ||||
List<ProxyConnector> connectors = proxyConnectorMap.get( key ); | List<ProxyConnector> connectors = proxyConnectorMap.get( key ); | ||||
if ( connectors == null ) | if ( connectors == null ) | ||||
{ | { | ||||
connectors = new ArrayList<ProxyConnector>( 1 ); | |||||
connectors = new ArrayList<>( 1 ); | |||||
proxyConnectorMap.put( key, connectors ); | proxyConnectorMap.put( key, connectors ); | ||||
} | } | ||||
* @author Olivier Lamy | * @author Olivier Lamy | ||||
* @since 1.4-M3 | * @since 1.4-M3 | ||||
*/ | */ | ||||
@Service ("proxyConnectorRuleAdmin#default") | |||||
@Service("proxyConnectorRuleAdmin#default") | |||||
public class DefaultProxyConnectorRuleAdmin | public class DefaultProxyConnectorRuleAdmin | ||||
extends AbstractRepositoryAdmin | extends AbstractRepositoryAdmin | ||||
implements ProxyConnectorRuleAdmin | implements ProxyConnectorRuleAdmin | ||||
{ | { | ||||
return Collections.emptyList(); | return Collections.emptyList(); | ||||
} | } | ||||
List<ProxyConnectorRule> proxyConnectorRules = | |||||
new ArrayList<ProxyConnectorRule>( proxyConnectorRuleConfigurations.size() ); | |||||
List<ProxyConnectorRule> proxyConnectorRules = new ArrayList<>( proxyConnectorRuleConfigurations.size() ); | |||||
for ( ProxyConnectorRuleConfiguration proxyConnectorRuleConfiguration : proxyConnectorRuleConfigurations ) | for ( ProxyConnectorRuleConfiguration proxyConnectorRuleConfiguration : proxyConnectorRuleConfigurations ) | ||||
{ | { | ||||
boolean toSave = false; | boolean toSave = false; | ||||
List<ProxyConnectorRuleConfiguration> proxyConnectorRuleConfigurations = | |||||
new ArrayList<ProxyConnectorRuleConfiguration>(); | |||||
List<ProxyConnectorRuleConfiguration> proxyConnectorRuleConfigurations = new ArrayList<>(); | |||||
for ( ProxyConnectorRuleConfiguration proxyConnectorRuleConfiguration : configuration.getProxyConnectorRuleConfigurations() ) | for ( ProxyConnectorRuleConfiguration proxyConnectorRuleConfiguration : configuration.getProxyConnectorRuleConfigurations() ) | ||||
{ | { | ||||
proxyConnectorRule.getProxyConnectorRuleType().getRuleType() ) ) | proxyConnectorRule.getProxyConnectorRuleType().getRuleType() ) ) | ||||
{ | { | ||||
List<ProxyConnectorConfiguration> proxyConnectors = | List<ProxyConnectorConfiguration> proxyConnectors = | ||||
new ArrayList<ProxyConnectorConfiguration>( proxyConnectorRule.getProxyConnectors().size() ); | |||||
new ArrayList<>( proxyConnectorRule.getProxyConnectors().size() ); | |||||
for ( ProxyConnector proxyConnector : proxyConnectorRule.getProxyConnectors() ) | for ( ProxyConnector proxyConnector : proxyConnectorRule.getProxyConnectors() ) | ||||
{ | { | ||||
ProxyConnectorConfiguration proxyConnectorConfiguration = new ProxyConnectorConfiguration(); | ProxyConnectorConfiguration proxyConnectorConfiguration = new ProxyConnectorConfiguration(); |
* @author Olivier Lamy | * @author Olivier Lamy | ||||
* @since 1.4-M1 | * @since 1.4-M1 | ||||
*/ | */ | ||||
@Service ( "remoteRepositoryAdmin#default" ) | |||||
@Service("remoteRepositoryAdmin#default") | |||||
public class DefaultRemoteRepositoryAdmin | public class DefaultRemoteRepositoryAdmin | ||||
extends AbstractRepositoryAdmin | extends AbstractRepositoryAdmin | ||||
implements RemoteRepositoryAdmin | implements RemoteRepositoryAdmin | ||||
public List<RemoteRepository> getRemoteRepositories() | public List<RemoteRepository> getRemoteRepositories() | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
List<RemoteRepository> remoteRepositories = new ArrayList<RemoteRepository>( | |||||
getArchivaConfiguration().getConfiguration().getRemoteRepositories().size() ); | |||||
List<RemoteRepository> remoteRepositories = | |||||
new ArrayList<>( getArchivaConfiguration().getConfiguration().getRemoteRepositories().size() ); | |||||
for ( RemoteRepositoryConfiguration repositoryConfiguration : getArchivaConfiguration().getConfiguration().getRemoteRepositories() ) | for ( RemoteRepositoryConfiguration repositoryConfiguration : getArchivaConfiguration().getConfiguration().getRemoteRepositories() ) | ||||
{ | { | ||||
RemoteRepository remoteRepository = | RemoteRepository remoteRepository = | ||||
// TODO use ProxyConnectorAdmin interface ? | // TODO use ProxyConnectorAdmin interface ? | ||||
// [MRM-520] Proxy Connectors are not deleted with the deletion of a Repository. | // [MRM-520] Proxy Connectors are not deleted with the deletion of a Repository. | ||||
List<ProxyConnectorConfiguration> proxyConnectors = | |||||
new ArrayList<ProxyConnectorConfiguration>( configuration.getProxyConnectors() ); | |||||
List<ProxyConnectorConfiguration> proxyConnectors = new ArrayList<>( configuration.getProxyConnectors() ); | |||||
for ( ProxyConnectorConfiguration proxyConnector : proxyConnectors ) | for ( ProxyConnectorConfiguration proxyConnector : proxyConnectors ) | ||||
{ | { | ||||
if ( StringUtils.equals( proxyConnector.getTargetRepoId(), repositoryId ) ) | if ( StringUtils.equals( proxyConnector.getTargetRepoId(), repositoryId ) ) |
* @author Olivier Lamy | * @author Olivier Lamy | ||||
* @since 1.4-M4 | * @since 1.4-M4 | ||||
*/ | */ | ||||
@Service( "redbackRuntimeConfigurationAdmin#default" ) | |||||
@Service("redbackRuntimeConfigurationAdmin#default") | |||||
public class DefaultRedbackRuntimeConfigurationAdmin | public class DefaultRedbackRuntimeConfigurationAdmin | ||||
extends AbstractRepositoryAdmin | extends AbstractRepositoryAdmin | ||||
implements RedbackRuntimeConfigurationAdmin, UserConfiguration | implements RedbackRuntimeConfigurationAdmin, UserConfiguration | ||||
@Inject | @Inject | ||||
public DefaultRedbackRuntimeConfigurationAdmin( ArchivaConfiguration archivaConfiguration,// | public DefaultRedbackRuntimeConfigurationAdmin( ArchivaConfiguration archivaConfiguration,// | ||||
@Named( value = "userConfiguration#redback" ) // | |||||
@Named(value = "userConfiguration#redback") // | |||||
UserConfiguration userConfiguration, | UserConfiguration userConfiguration, | ||||
@Named( value = "cache#users" ) Cache usersCache ) | |||||
@Named(value = "cache#users") Cache usersCache ) | |||||
{ | { | ||||
this.archivaConfiguration = archivaConfiguration; | this.archivaConfiguration = archivaConfiguration; | ||||
this.userConfiguration = userConfiguration; | this.userConfiguration = userConfiguration; | ||||
Collection<String> keys = userConfiguration.getKeys(); | Collection<String> keys = userConfiguration.getKeys(); | ||||
List<LdapGroupMapping> ldapGroupMappings = new ArrayList<LdapGroupMapping>(); | |||||
List<LdapGroupMapping> ldapGroupMappings = new ArrayList<>(); | |||||
for ( String key : keys ) | for ( String key : keys ) | ||||
{ | { | ||||
if ( mappings != null && mappings.size() > 0 ) | if ( mappings != null && mappings.size() > 0 ) | ||||
{ | { | ||||
List<LdapGroupMapping> ldapGroupMappings = new ArrayList<LdapGroupMapping>( mappings.size() ); | |||||
List<LdapGroupMapping> ldapGroupMappings = new ArrayList<>( mappings.size() ); | |||||
for ( org.apache.archiva.configuration.LdapGroupMapping mapping : mappings ) | for ( org.apache.archiva.configuration.LdapGroupMapping mapping : mappings ) | ||||
{ | { | ||||
{ | { | ||||
List<org.apache.archiva.configuration.LdapGroupMapping> mappings = | List<org.apache.archiva.configuration.LdapGroupMapping> mappings = | ||||
new ArrayList<org.apache.archiva.configuration.LdapGroupMapping>( ldapGroupMappings.size() ); | |||||
new ArrayList<>( ldapGroupMappings.size() ); | |||||
for ( LdapGroupMapping ldapGroupMapping : ldapGroupMappings ) | for ( LdapGroupMapping ldapGroupMapping : ldapGroupMappings ) | ||||
{ | { | ||||
org.apache.archiva.configuration.LdapGroupMapping mapping = | org.apache.archiva.configuration.LdapGroupMapping mapping = | ||||
new org.apache.archiva.configuration.LdapGroupMapping(); | new org.apache.archiva.configuration.LdapGroupMapping(); | ||||
mapping.setGroup( ldapGroupMapping.getGroup() ); | mapping.setGroup( ldapGroupMapping.getGroup() ); | ||||
mapping.setRoleNames( new ArrayList<String>( ldapGroupMapping.getRoleNames() ) ); | |||||
mapping.setRoleNames( new ArrayList<>( ldapGroupMapping.getRoleNames() ) ); | |||||
mappings.add( mapping ); | mappings.add( mapping ); | ||||
} | } |
implements AuditListener | implements AuditListener | ||||
{ | { | ||||
private List<AuditEvent> auditEvents = new ArrayList<AuditEvent>(); | |||||
private List<AuditEvent> auditEvents = new ArrayList<>(); | |||||
public void auditEvent( AuditEvent event ) | public void auditEvent( AuditEvent event ) | ||||
{ | { |
@PostConstruct | @PostConstruct | ||||
public void initialize() | public void initialize() | ||||
{ | { | ||||
this.artifactPatterns = new ArrayList<String>(); | |||||
this.proxies = new HashMap<String, Set<String>>(); | |||||
this.artifactPatterns = new ArrayList<>(); | |||||
this.proxies = new HashMap<>(); | |||||
initConfigVariables(); | initConfigVariables(); | ||||
configuration.addChangeListener( this ); | configuration.addChangeListener( this ); | ||||
private List<ArchivaRepositoryMetadata> getMetadatasForManagedRepository( | private List<ArchivaRepositoryMetadata> getMetadatasForManagedRepository( | ||||
ManagedRepositoryContent managedRepository, String logicalResource ) | ManagedRepositoryContent managedRepository, String logicalResource ) | ||||
{ | { | ||||
List<ArchivaRepositoryMetadata> metadatas = new ArrayList<ArchivaRepositoryMetadata>(); | |||||
List<ArchivaRepositoryMetadata> metadatas = new ArrayList<>(); | |||||
File file = new File( managedRepository.getRepoRoot(), logicalResource ); | File file = new File( managedRepository.getRepoRoot(), logicalResource ); | ||||
if ( file.exists() ) | if ( file.exists() ) | ||||
{ | { | ||||
else | else | ||||
{ | { | ||||
// Add the plugins to the metadata model. | // Add the plugins to the metadata model. | ||||
metadata.setPlugins( new ArrayList<Plugin>( allPlugins ) ); | |||||
metadata.setPlugins( new ArrayList<>( allPlugins ) ); | |||||
// artifact ID was actually the last part of the group | // artifact ID was actually the last part of the group | ||||
metadata.setGroupId( metadata.getGroupId() + "." + metadata.getArtifactId() ); | metadata.setGroupId( metadata.getGroupId() + "." + metadata.getArtifactId() ); | ||||
private void updateMetadataVersions( Collection<String> allVersions, ArchivaRepositoryMetadata metadata ) | private void updateMetadataVersions( Collection<String> allVersions, ArchivaRepositoryMetadata metadata ) | ||||
{ | { | ||||
// Sort the versions | // Sort the versions | ||||
List<String> sortedVersions = new ArrayList<String>( allVersions ); | |||||
List<String> sortedVersions = new ArrayList<>( allVersions ); | |||||
Collections.sort( sortedVersions, VersionComparator.getInstance() ); | Collections.sort( sortedVersions, VersionComparator.getInstance() ); | ||||
// Split the versions into released and snapshots. | // Split the versions into released and snapshots. | ||||
List<String> releasedVersions = new ArrayList<String>(); | |||||
List<String> snapshotVersions = new ArrayList<String>(); | |||||
List<String> releasedVersions = new ArrayList<>(); | |||||
List<String> snapshotVersions = new ArrayList<>(); | |||||
for ( String version : sortedVersions ) | for ( String version : sortedVersions ) | ||||
{ | { | ||||
} | } | ||||
// sort the list to determine to aide in determining the Latest version. | // sort the list to determine to aide in determining the Latest version. | ||||
List<String> sortedVersions = new ArrayList<String>(); | |||||
List<String> sortedVersions = new ArrayList<>(); | |||||
sortedVersions.addAll( snapshotVersions ); | sortedVersions.addAll( snapshotVersions ); | ||||
Collections.sort( sortedVersions, new VersionComparator() ); | Collections.sort( sortedVersions, new VersionComparator() ); | ||||
return null; | return null; | ||||
} | } | ||||
List<Plugin> result = new ArrayList<Plugin>(); | |||||
List<Plugin> result = new ArrayList<>(); | |||||
for (Plugin plugin : plugins) | for (Plugin plugin : plugins) | ||||
{ | { |
// Setup Includes / Excludes. | // Setup Includes / Excludes. | ||||
List<String> allExcludes = new ArrayList<String>(); | |||||
List<String> allIncludes = new ArrayList<String>(); | |||||
List<String> allExcludes = new ArrayList<>(); | |||||
List<String> allIncludes = new ArrayList<>(); | |||||
if ( CollectionUtils.isNotEmpty( ignoredContentPatterns ) ) | if ( CollectionUtils.isNotEmpty( ignoredContentPatterns ) ) | ||||
{ | { | ||||
private List<String> gatherIds( List<? extends RepositoryContentConsumer> consumers ) | private List<String> gatherIds( List<? extends RepositoryContentConsumer> consumers ) | ||||
{ | { | ||||
List<String> ids = new ArrayList<String>(); | |||||
List<String> ids = new ArrayList<>(); | |||||
for ( RepositoryContentConsumer consumer : consumers ) | for ( RepositoryContentConsumer consumer : consumers ) | ||||
{ | { | ||||
ids.add( consumer.getId() ); | ids.add( consumer.getId() ); |
{ | { | ||||
return selectedKnownConsumers; | return selectedKnownConsumers; | ||||
} | } | ||||
List<KnownRepositoryContentConsumer> ret = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> ret = new ArrayList<>(); | |||||
List<String> knownSelected = getSelectedKnownConsumerIds(); | List<String> knownSelected = getSelectedKnownConsumerIds(); | ||||
return selectedInvalidConsumers; | return selectedInvalidConsumers; | ||||
} | } | ||||
List<InvalidRepositoryContentConsumer> ret = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> ret = new ArrayList<>(); | |||||
List<String> invalidSelected = getSelectedInvalidConsumerIds(); | List<String> invalidSelected = getSelectedInvalidConsumerIds(); | ||||
*/ | */ | ||||
public List<KnownRepositoryContentConsumer> getAvailableKnownConsumers() | public List<KnownRepositoryContentConsumer> getAvailableKnownConsumers() | ||||
{ | { | ||||
return new ArrayList<KnownRepositoryContentConsumer>( | |||||
return new ArrayList<>( | |||||
applicationContext.getBeansOfType( KnownRepositoryContentConsumer.class ).values() ); | applicationContext.getBeansOfType( KnownRepositoryContentConsumer.class ).values() ); | ||||
} | } | ||||
*/ | */ | ||||
public List<InvalidRepositoryContentConsumer> getAvailableInvalidConsumers() | public List<InvalidRepositoryContentConsumer> getAvailableInvalidConsumers() | ||||
{ | { | ||||
return new ArrayList<InvalidRepositoryContentConsumer>( | |||||
return new ArrayList<>( | |||||
applicationContext.getBeansOfType( InvalidRepositoryContentConsumer.class ).values() ); | applicationContext.getBeansOfType( InvalidRepositoryContentConsumer.class ).values() ); | ||||
} | } | ||||
// - do not create missing/fix invalid checksums and update metadata when deploying from webdav since these are uploaded by maven | // - do not create missing/fix invalid checksums and update metadata when deploying from webdav since these are uploaded by maven | ||||
if ( !updateRelatedArtifacts ) | if ( !updateRelatedArtifacts ) | ||||
{ | { | ||||
List<KnownRepositoryContentConsumer> clone = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> clone = new ArrayList<>(); | |||||
clone.addAll( selectedKnownConsumers ); | clone.addAll( selectedKnownConsumers ); | ||||
for ( KnownRepositoryContentConsumer consumer : clone ) | for ( KnownRepositoryContentConsumer consumer : clone ) |
{ | { | ||||
private int processCount = 0; | private int processCount = 0; | ||||
private List<String> includes = new ArrayList<String>(); | |||||
private List<String> includes = new ArrayList<>(); | |||||
private boolean processUnmodified = false; | private boolean processUnmodified = false; | ||||
private List<String> getIgnoreList() | private List<String> getIgnoreList() | ||||
{ | { | ||||
List<String> ignores = new ArrayList<String>(); | |||||
List<String> ignores = new ArrayList<>(); | |||||
ignores.addAll( Arrays.asList( RepositoryScanner.IGNORABLE_CONTENT ) ); | ignores.addAll( Arrays.asList( RepositoryScanner.IGNORABLE_CONTENT ) ); | ||||
return ignores; | return ignores; | ||||
} | } | ||||
{ | { | ||||
ManagedRepository repository = createSimpleRepository(); | ManagedRepository repository = createSimpleRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setIncludes( ARTIFACT_PATTERNS ); | consumer.setIncludes( ARTIFACT_PATTERNS ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
{ | { | ||||
ManagedRepository repository = createSimpleRepository(); | ManagedRepository repository = createSimpleRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setIncludes( ARTIFACT_PATTERNS ); | consumer.setIncludes( ARTIFACT_PATTERNS ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
{ | { | ||||
ManagedRepository repository = createSimpleRepository(); | ManagedRepository repository = createSimpleRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setProcessUnmodified( true ); | consumer.setProcessUnmodified( true ); | ||||
consumer.setIncludes( ARTIFACT_PATTERNS ); | consumer.setIncludes( ARTIFACT_PATTERNS ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
{ | { | ||||
ManagedRepository repository = createDefaultRepository(); | ManagedRepository repository = createDefaultRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setIncludes( | consumer.setIncludes( | ||||
new String[]{ "**/*.jar", "**/*.war", "**/*.pom", "**/maven-metadata.xml", "**/*-site.xml", "**/*.zip", | new String[]{ "**/*.jar", "**/*.war", "**/*.pom", "**/maven-metadata.xml", "**/*-site.xml", "**/*.zip", | ||||
"**/*.tar.gz", "**/*.sha1", "**/*.md5" } ); | "**/*.tar.gz", "**/*.sha1", "**/*.md5" } ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
public void testDefaultRepositoryArtifactScanner() | public void testDefaultRepositoryArtifactScanner() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> actualArtifactPaths = new ArrayList<String>(); | |||||
List<String> actualArtifactPaths = new ArrayList<>(); | |||||
actualArtifactPaths.add( "invalid/invalid/1.0-20050611.123456-1/invalid-1.0-20050611.123456-1.jar" ); | actualArtifactPaths.add( "invalid/invalid/1.0-20050611.123456-1/invalid-1.0-20050611.123456-1.jar" ); | ||||
actualArtifactPaths.add( "invalid/invalid/1.0-SNAPSHOT/invalid-1.0.jar" ); | actualArtifactPaths.add( "invalid/invalid/1.0-SNAPSHOT/invalid-1.0.jar" ); | ||||
ManagedRepository repository = createDefaultRepository(); | ManagedRepository repository = createDefaultRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setIncludes( ARTIFACT_PATTERNS ); | consumer.setIncludes( ARTIFACT_PATTERNS ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
public void testDefaultRepositoryMetadataScanner() | public void testDefaultRepositoryMetadataScanner() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> actualMetadataPaths = new ArrayList<String>(); | |||||
List<String> actualMetadataPaths = new ArrayList<>(); | |||||
actualMetadataPaths.add( "org/apache/maven/some-ejb/1.0/maven-metadata.xml" ); | actualMetadataPaths.add( "org/apache/maven/some-ejb/1.0/maven-metadata.xml" ); | ||||
actualMetadataPaths.add( "org/apache/maven/update/test-not-updated/maven-metadata.xml" ); | actualMetadataPaths.add( "org/apache/maven/update/test-not-updated/maven-metadata.xml" ); | ||||
ManagedRepository repository = createDefaultRepository(); | ManagedRepository repository = createDefaultRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer knownConsumer = new KnownScanConsumer(); | KnownScanConsumer knownConsumer = new KnownScanConsumer(); | ||||
knownConsumer.setIncludes( new String[]{ "**/maven-metadata*.xml" } ); | knownConsumer.setIncludes( new String[]{ "**/maven-metadata*.xml" } ); | ||||
knownConsumers.add( knownConsumer ); | knownConsumers.add( knownConsumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
public void testDefaultRepositoryProjectScanner() | public void testDefaultRepositoryProjectScanner() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> actualProjectPaths = new ArrayList<String>(); | |||||
List<String> actualProjectPaths = new ArrayList<>(); | |||||
actualProjectPaths.add( "org/apache/maven/A/1.0/A-1.0.pom" ); | actualProjectPaths.add( "org/apache/maven/A/1.0/A-1.0.pom" ); | ||||
actualProjectPaths.add( "org/apache/maven/B/2.0/B-2.0.pom" ); | actualProjectPaths.add( "org/apache/maven/B/2.0/B-2.0.pom" ); | ||||
ManagedRepository repository = createDefaultRepository(); | ManagedRepository repository = createDefaultRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setIncludes( new String[]{ "**/*.pom" } ); | consumer.setIncludes( new String[]{ "**/*.pom" } ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
public void testLegacyRepositoryArtifactScanner() | public void testLegacyRepositoryArtifactScanner() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<String> actualArtifactPaths = new ArrayList<String>(); | |||||
List<String> actualArtifactPaths = new ArrayList<>(); | |||||
actualArtifactPaths.add( "invalid/jars/1.0/invalid-1.0.jar" ); | actualArtifactPaths.add( "invalid/jars/1.0/invalid-1.0.jar" ); | ||||
actualArtifactPaths.add( "invalid/jars/invalid-1.0.rar" ); | actualArtifactPaths.add( "invalid/jars/invalid-1.0.rar" ); | ||||
ManagedRepository repository = createLegacyRepository(); | ManagedRepository repository = createLegacyRepository(); | ||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<KnownRepositoryContentConsumer>(); | |||||
List<KnownRepositoryContentConsumer> knownConsumers = new ArrayList<>(); | |||||
KnownScanConsumer consumer = new KnownScanConsumer(); | KnownScanConsumer consumer = new KnownScanConsumer(); | ||||
consumer.setIncludes( ARTIFACT_PATTERNS ); | consumer.setIncludes( ARTIFACT_PATTERNS ); | ||||
knownConsumers.add( consumer ); | knownConsumers.add( consumer ); | ||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<InvalidRepositoryContentConsumer>(); | |||||
List<InvalidRepositoryContentConsumer> invalidConsumers = new ArrayList<>(); | |||||
InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | InvalidScanConsumer badconsumer = new InvalidScanConsumer(); | ||||
invalidConsumers.add( badconsumer ); | invalidConsumers.add( badconsumer ); | ||||
return null; | return null; | ||||
} | } | ||||
List<FrameworkMethod> generated = new ArrayList<FrameworkMethod>(); | |||||
List<FrameworkMethod> generated = new ArrayList<>(); | |||||
testRound = Math.min( MAXROUND, testRound ); | testRound = Math.min( MAXROUND, testRound ); | ||||
public abstract class AbstractTransactionEvent | public abstract class AbstractTransactionEvent | ||||
implements TransactionEvent | implements TransactionEvent | ||||
{ | { | ||||
private Map<File, File> backups = new HashMap<File, File>(); | |||||
private Map<File, File> backups = new HashMap<>(); | |||||
private List<File> createdDirs = new ArrayList<File>(); | |||||
private List<File> createdDirs = new ArrayList<>(); | |||||
private List<File> createdFiles = new ArrayList<File>(); | |||||
private List<File> createdFiles = new ArrayList<>(); | |||||
/** | /** | ||||
* {@link List}<{@link Digester}> | * {@link List}<{@link Digester}> | ||||
protected void mkDirs( File dir ) | protected void mkDirs( File dir ) | ||||
throws IOException | throws IOException | ||||
{ | { | ||||
List<File> createDirs = new ArrayList<File>(); | |||||
List<File> createDirs = new ArrayList<>(); | |||||
File parent = dir; | File parent = dir; | ||||
while ( !parent.exists() || !parent.isDirectory() ) | while ( !parent.exists() || !parent.isDirectory() ) | ||||
while ( !createDirs.isEmpty() ) | while ( !createDirs.isEmpty() ) | ||||
{ | { | ||||
File directory = (File) createDirs.remove( createDirs.size() - 1 ); | |||||
File directory = createDirs.remove( createDirs.size() - 1 ); | |||||
if ( directory.mkdir() ) | if ( directory.mkdir() ) | ||||
{ | { |
*/ | */ | ||||
public class FileTransaction | public class FileTransaction | ||||
{ | { | ||||
private List<AbstractTransactionEvent> events = new ArrayList<AbstractTransactionEvent>(); | |||||
private List<AbstractTransactionEvent> events = new ArrayList<>(); | |||||
public void commit() | public void commit() | ||||
throws TransactionException | throws TransactionException |
public static final String CRON_HOURLY = "0 0 * * * ?"; | public static final String CRON_HOURLY = "0 0 * * * ?"; | ||||
private Set<String> jobs = new HashSet<String>(); | |||||
private Set<String> jobs = new HashSet<>(); | |||||
private List<String> queuedRepos = new ArrayList<String>(); | |||||
private List<String> queuedRepos = new ArrayList<>(); | |||||
@PostConstruct | @PostConstruct | ||||
public void startup() | public void startup() |
public List<String> getKnownContentConsumers() | public List<String> getKnownContentConsumers() | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
return new ArrayList<String>( | |||||
return new ArrayList<>( | |||||
getArchivaConfiguration().getConfiguration().getRepositoryScanning().getKnownContentConsumers() ); | getArchivaConfiguration().getConfiguration().getRepositoryScanning().getKnownContentConsumers() ); | ||||
} | } | ||||
public List<String> getInvalidContentConsumers() | public List<String> getInvalidContentConsumers() | ||||
throws RepositoryAdminException | throws RepositoryAdminException | ||||
{ | { | ||||
return new ArrayList<String>( | |||||
return new ArrayList<>( | |||||
getArchivaConfiguration().getConfiguration().getRepositoryScanning().getInvalidContentConsumers() ); | getArchivaConfiguration().getConfiguration().getRepositoryScanning().getInvalidContentConsumers() ); | ||||
} | } | ||||
List<ManagedRepositoryConfiguration> managedRepoConfigs = | List<ManagedRepositoryConfiguration> managedRepoConfigs = | ||||
getArchivaConfiguration().getConfiguration().getManagedRepositories(); | getArchivaConfiguration().getConfiguration().getManagedRepositories(); | ||||
List<ManagedRepository> managedRepos = new ArrayList<ManagedRepository>( managedRepoConfigs.size() ); | |||||
List<ManagedRepository> managedRepos = new ArrayList<>( managedRepoConfigs.size() ); | |||||
for ( ManagedRepositoryConfiguration repoConfig : managedRepoConfigs ) | for ( ManagedRepositoryConfiguration repoConfig : managedRepoConfigs ) | ||||
{ | { |
List<RepositoryStatistics> stats = repoStats.get( repositoryId ); | List<RepositoryStatistics> stats = repoStats.get( repositoryId ); | ||||
if ( stats == null ) | if ( stats == null ) | ||||
{ | { | ||||
stats = new ArrayList<RepositoryStatistics>(); | |||||
stats = new ArrayList<>(); | |||||
repoStats.put( repositoryId, stats ); | repoStats.put( repositoryId, stats ); | ||||
} | } | ||||
return stats; | return stats; |
/** | /** | ||||
* repositories | * repositories | ||||
*/ | */ | ||||
private List<String> repositories = new ArrayList<String>(); | |||||
private List<String> repositories = new ArrayList<>(); | |||||
/** | /** |
protected Logger log = LoggerFactory.getLogger( getClass() ); | protected Logger log = LoggerFactory.getLogger( getClass() ); | ||||
@Inject | @Inject | ||||
private List<AuditListener> auditListeners = new ArrayList<AuditListener>(); | |||||
private List<AuditListener> auditListeners = new ArrayList<>(); | |||||
@Inject | @Inject | ||||
protected UserRepositories userRepositories; | protected UserRepositories userRepositories; | ||||
{ | { | ||||
if ( artifactMetadatas != null && !artifactMetadatas.isEmpty() ) | if ( artifactMetadatas != null && !artifactMetadatas.isEmpty() ) | ||||
{ | { | ||||
List<Artifact> artifacts = new ArrayList<Artifact>( artifactMetadatas.size() ); | |||||
List<Artifact> artifacts = new ArrayList<>( artifactMetadatas.size() ); | |||||
for ( ArtifactMetadata artifact : artifactMetadatas ) | for ( ArtifactMetadata artifact : artifactMetadatas ) | ||||
{ | { | ||||
repositorySession.close(); | repositorySession.close(); | ||||
} | } | ||||
List<BrowseResultEntry> browseGroupResultEntries = new ArrayList<BrowseResultEntry>( namespaces.size() ); | |||||
List<BrowseResultEntry> browseGroupResultEntries = new ArrayList<>( namespaces.size() ); | |||||
for ( String namespace : namespaces ) | for ( String namespace : namespaces ) | ||||
{ | { | ||||
browseGroupResultEntries.add( new BrowseResultEntry( namespace, false ) ); | browseGroupResultEntries.add( new BrowseResultEntry( namespace, false ) ); | ||||
repositorySession.close(); | repositorySession.close(); | ||||
} | } | ||||
List<BrowseResultEntry> browseGroupResultEntries = | List<BrowseResultEntry> browseGroupResultEntries = | ||||
new ArrayList<BrowseResultEntry>( namespaces.size() + projects.size() ); | |||||
new ArrayList<>( namespaces.size() + projects.size() ); | |||||
for ( String namespace : namespaces ) | for ( String namespace : namespaces ) | ||||
{ | { | ||||
browseGroupResultEntries.add( new BrowseResultEntry( namespace, false ).groupId( namespace ) ); | browseGroupResultEntries.add( new BrowseResultEntry( namespace, false ).groupId( namespace ) ); | ||||
try | try | ||||
{ | { | ||||
Collection<String> versions = getVersions( selectedRepos, groupId, artifactId ); | Collection<String> versions = getVersions( selectedRepos, groupId, artifactId ); | ||||
return new VersionsList( new ArrayList<String>( versions ) ); | |||||
return new VersionsList( new ArrayList<>( versions ) ); | |||||
} | } | ||||
catch ( MetadataResolutionException e ) | catch ( MetadataResolutionException e ) | ||||
{ | { | ||||
versions.addAll( projectVersions ); | versions.addAll( projectVersions ); | ||||
} | } | ||||
List<String> sortedVersions = new ArrayList<String>( versions ); | |||||
List<String> sortedVersions = new ArrayList<>( versions ); | |||||
Collections.sort( sortedVersions, VersionComparator.getInstance() ); | Collections.sort( sortedVersions, VersionComparator.getInstance() ); | ||||
public List<Artifact> getDependees( String groupId, String artifactId, String version, String repositoryId ) | public List<Artifact> getDependees( String groupId, String artifactId, String version, String repositoryId ) | ||||
throws ArchivaRestServiceException | throws ArchivaRestServiceException | ||||
{ | { | ||||
List<ProjectVersionReference> references = new ArrayList<ProjectVersionReference>(); | |||||
List<ProjectVersionReference> references = new ArrayList<>(); | |||||
// TODO: what if we get duplicates across repositories? | // TODO: what if we get duplicates across repositories? | ||||
RepositorySession repositorySession = repositorySessionFactory.createSession(); | RepositorySession repositorySession = repositorySessionFactory.createSession(); | ||||
try | try | ||||
repositorySession.close(); | repositorySession.close(); | ||||
} | } | ||||
List<Artifact> artifacts = new ArrayList<Artifact>( references.size() ); | |||||
List<Artifact> artifacts = new ArrayList<>( references.size() ); | |||||
for ( ProjectVersionReference projectVersionReference : references ) | for ( ProjectVersionReference projectVersionReference : references ) | ||||
{ | { | ||||
return Collections.emptyList(); | return Collections.emptyList(); | ||||
} | } | ||||
Map<String, String> map = metadataFacet.toProperties(); | Map<String, String> map = metadataFacet.toProperties(); | ||||
List<Entry> entries = new ArrayList<Entry>( map.size() ); | |||||
List<Entry> entries = new ArrayList<>( map.size() ); | |||||
for ( Map.Entry<String, String> entry : map.entrySet() ) | for ( Map.Entry<String, String> entry : map.entrySet() ) | ||||
{ | { | ||||
{ | { | ||||
List<String> selectedRepos = getSelectedRepos( repositoryId ); | List<String> selectedRepos = getSelectedRepos( repositoryId ); | ||||
List<Artifact> artifactDownloadInfos = new ArrayList<Artifact>(); | |||||
List<Artifact> artifactDownloadInfos = new ArrayList<>(); | |||||
RepositorySession session = repositorySessionFactory.createSession(); | RepositorySession session = repositorySessionFactory.createSession(); | ||||
{ | { | ||||
for ( String repoId : selectedRepos ) | for ( String repoId : selectedRepos ) | ||||
{ | { | ||||
List<ArtifactMetadata> artifacts = new ArrayList<ArtifactMetadata>( | |||||
List<ArtifactMetadata> artifacts = new ArrayList<>( | |||||
metadataResolver.resolveArtifacts( session, repoId, groupId, artifactId, version ) ); | metadataResolver.resolveArtifacts( session, repoId, groupId, artifactId, version ) ); | ||||
Collections.sort( artifacts, ArtifactMetadataVersionComparator.INSTANCE ); | Collections.sort( artifacts, ArtifactMetadataVersionComparator.INSTANCE ); | ||||
if ( artifacts != null && !artifacts.isEmpty() ) | if ( artifacts != null && !artifacts.isEmpty() ) | ||||
jarFile.close(); | jarFile.close(); | ||||
} | } | ||||
} | } | ||||
List<ArtifactContentEntry> sorted = new ArrayList<ArtifactContentEntry>( artifactContentEntryMap.values() ); | |||||
List<ArtifactContentEntry> sorted = new ArrayList<>( artifactContentEntryMap.values() ); | |||||
Collections.sort( sorted, ArtifactContentEntryComparator.INSTANCE ); | Collections.sort( sorted, ArtifactContentEntryComparator.INSTANCE ); | ||||
return sorted; | return sorted; | ||||
} | } | ||||
if ( currentList == null ) | if ( currentList == null ) | ||||
{ | { | ||||
currentList = new ArrayList<ArtifactContentEntry>(); | |||||
currentList = new ArrayList<>(); | |||||
currentList.add( current ); | currentList.add( current ); | ||||
perDepthList.put( current.getDepth(), currentList ); | perDepthList.put( current.getDepth(), currentList ); | ||||
} | } |
String sourceRepoId, String repoid ) | String sourceRepoId, String repoid ) | ||||
throws RepositoryMergerException | throws RepositoryMergerException | ||||
{ | { | ||||
List<ArtifactMetadata> artifactsWithOutSnapshots = new ArrayList<ArtifactMetadata>(); | |||||
List<ArtifactMetadata> artifactsWithOutSnapshots = new ArrayList<>(); | |||||
for ( ArtifactMetadata metadata : sourceArtifacts ) | for ( ArtifactMetadata metadata : sourceArtifacts ) | ||||
{ | { | ||||
if ( VersionUtil.isSnapshot( metadata.getProjectVersion() ) ) | if ( VersionUtil.isSnapshot( metadata.getProjectVersion() ) ) |
implements PluginsService | implements PluginsService | ||||
{ | { | ||||
private List<String> repositoryType = new ArrayList<String>(); | |||||
private List<String> repositoryType = new ArrayList<>(); | |||||
private List<String> adminFeatures = new ArrayList<String>(); | |||||
private List<String> adminFeatures = new ArrayList<>(); | |||||
private ApplicationContext appCont; | private ApplicationContext appCont; | ||||
@Inject | @Inject | ||||
public DefaultProxyConnectorService( ApplicationContext applicationContext ) | public DefaultProxyConnectorService( ApplicationContext applicationContext ) | ||||
{ | { | ||||
allPolicies = new ArrayList<Policy>( getBeansOfType( applicationContext, Policy.class ).values() ); | |||||
allPolicies = new ArrayList<>( getBeansOfType( applicationContext, Policy.class ).values() ); | |||||
} | } | ||||
public List<ProxyConnector> getProxyConnectors() | public List<ProxyConnector> getProxyConnectors() | ||||
public List<PolicyInformation> getAllPolicyInformations() | public List<PolicyInformation> getAllPolicyInformations() | ||||
throws ArchivaRestServiceException | throws ArchivaRestServiceException | ||||
{ | { | ||||
List<PolicyInformation> policyInformations = new ArrayList<PolicyInformation>( allPolicies.size() ); | |||||
List<PolicyInformation> policyInformations = new ArrayList<>( allPolicies.size() ); | |||||
for ( Policy policy : allPolicies ) | for ( Policy policy : allPolicies ) | ||||
{ | { |
return Collections.emptyList(); | return Collections.emptyList(); | ||||
} | } | ||||
List<UserManagerImplementationInformation> informations = | |||||
new ArrayList<UserManagerImplementationInformation>( beans.size() ); | |||||
List<UserManagerImplementationInformation> informations = new ArrayList<>( beans.size() ); | |||||
for ( Map.Entry<String, UserManager> entry : beans.entrySet() ) | for ( Map.Entry<String, UserManager> entry : beans.entrySet() ) | ||||
{ | { | ||||
return Collections.emptyList(); | return Collections.emptyList(); | ||||
} | } | ||||
List<RBACManagerImplementationInformation> informations = | |||||
new ArrayList<RBACManagerImplementationInformation>( beans.size() ); | |||||
List<RBACManagerImplementationInformation> informations = new ArrayList<>( beans.size() ); | |||||
for ( Map.Entry<String, RBACManager> entry : beans.entrySet() ) | for ( Map.Entry<String, RBACManager> entry : beans.entrySet() ) | ||||
{ | { | ||||
} | } | ||||
catch ( InvalidNameException e ) | catch ( InvalidNameException e ) | ||||
{ | { | ||||
log.warn( "fail to get ldapConnection: {}", e.getMessage(), e); | |||||
log.warn( "fail to get ldapConnection: {}", e.getMessage(), e ); | |||||
throw new ArchivaRestServiceException( e.getMessage(), e ); | throw new ArchivaRestServiceException( e.getMessage(), e ); | ||||
} | } | ||||
catch ( LdapException e ) | catch ( LdapException e ) | ||||
{ | { | ||||
log.warn( "fail to get ldapConnection: {}", e.getMessage(), e); | |||||
log.warn( "fail to get ldapConnection: {}", e.getMessage(), e ); | |||||
throw new ArchivaRestServiceException( e.getMessage(), e ); | throw new ArchivaRestServiceException( e.getMessage(), e ); | ||||
} | } | ||||
finally | finally |
try | try | ||||
{ | { | ||||
MetadataRepository metadataRepository = repositorySession.getRepository(); | MetadataRepository metadataRepository = repositorySession.getRepository(); | ||||
List<RepositoryStatistics> stats = new ArrayList<RepositoryStatistics>(); | |||||
List<RepositoryStatistics> stats = new ArrayList<>(); | |||||
for ( String repo : repositoriesId ) | for ( String repo : repositoriesId ) | ||||
{ | { | ||||
try | try | ||||
if ( !ALL_REPOSITORIES.equals( repository ) ) | if ( !ALL_REPOSITORIES.equals( repository ) ) | ||||
{ | { | ||||
observableRepositories = Collections.<String>singletonList( repository ); | |||||
observableRepositories = Collections.singletonList( repository ); | |||||
} | } | ||||
List<RepositoryProblemFacet> problemArtifacts = new ArrayList<RepositoryProblemFacet>(); | |||||
List<RepositoryProblemFacet> problemArtifacts = new ArrayList<>(); | |||||
MetadataRepository metadataRepository = repositorySession.getRepository(); | MetadataRepository metadataRepository = repositorySession.getRepository(); | ||||
for ( String repoId : observableRepositories ) | for ( String repoId : observableRepositories ) | ||||
{ | { |
boolean fixChecksums, ArtifactTransferRequest artifactTransferRequest ) | boolean fixChecksums, ArtifactTransferRequest artifactTransferRequest ) | ||||
throws RepositoryMetadataException | throws RepositoryMetadataException | ||||
{ | { | ||||
List<String> availableVersions = new ArrayList<String>(); | |||||
List<String> availableVersions = new ArrayList<>(); | |||||
String latestVersion = artifactTransferRequest.getVersion(); | String latestVersion = artifactTransferRequest.getVersion(); | ||||
File projectDir = new File( targetPath ).getParentFile(); | File projectDir = new File( targetPath ).getParentFile(); | ||||
Artifact artifact ) | Artifact artifact ) | ||||
throws RepositoryMetadataException | throws RepositoryMetadataException | ||||
{ | { | ||||
List<String> availableVersions = new ArrayList<String>(); | |||||
List<String> availableVersions = new ArrayList<>(); | |||||
String latestVersion = ""; | String latestVersion = ""; | ||||
if ( metadataFile.exists() ) | if ( metadataFile.exists() ) |
try | try | ||||
{ | { | ||||
List<RepositoryGroup> repositoriesGroups = | List<RepositoryGroup> repositoriesGroups = | ||||
new ArrayList<RepositoryGroup>( repositoryGroupAdmin.getRepositoriesGroups().size() ); | |||||
new ArrayList<>( repositoryGroupAdmin.getRepositoriesGroups().size() ); | |||||
for ( org.apache.archiva.admin.model.beans.RepositoryGroup repoGroup : repositoryGroupAdmin.getRepositoriesGroups() ) | for ( org.apache.archiva.admin.model.beans.RepositoryGroup repoGroup : repositoryGroupAdmin.getRepositoriesGroups() ) | ||||
{ | { | ||||
repositoriesGroups.add( new RepositoryGroup( repoGroup.getId(), new ArrayList<String>( | |||||
repositoriesGroups.add( new RepositoryGroup( repoGroup.getId(), new ArrayList<>( | |||||
repoGroup.getRepositories() ) ).mergedIndexPath( repoGroup.getMergedIndexPath() ).mergedIndexTtl( | repoGroup.getRepositories() ) ).mergedIndexPath( repoGroup.getMergedIndexPath() ).mergedIndexTtl( | ||||
repoGroup.getMergedIndexTtl() ).cronExpression( repoGroup.getCronExpression() ) ); | repoGroup.getMergedIndexTtl() ).cronExpression( repoGroup.getCronExpression() ) ); | ||||
} | } | ||||
try | try | ||||
{ | { | ||||
return repositoryGroupAdmin.addRepositoryGroup( | return repositoryGroupAdmin.addRepositoryGroup( | ||||
new org.apache.archiva.admin.model.beans.RepositoryGroup( repoGroup.getId(), new ArrayList<String>( | |||||
new org.apache.archiva.admin.model.beans.RepositoryGroup( repoGroup.getId(), new ArrayList<>( | |||||
repoGroup.getRepositories() ) ).mergedIndexPath( repoGroup.getMergedIndexPath() ).mergedIndexTtl( | repoGroup.getRepositories() ) ).mergedIndexPath( repoGroup.getMergedIndexPath() ).mergedIndexTtl( | ||||
repoGroup.getMergedIndexTtl() ).cronExpression( repoGroup.getCronExpression() ), | repoGroup.getMergedIndexTtl() ).cronExpression( repoGroup.getCronExpression() ), | ||||
getAuditInformation() ); | getAuditInformation() ); | ||||
try | try | ||||
{ | { | ||||
return repositoryGroupAdmin.updateRepositoryGroup( | return repositoryGroupAdmin.updateRepositoryGroup( | ||||
new org.apache.archiva.admin.model.beans.RepositoryGroup( repoGroup.getId(), new ArrayList<String>( | |||||
new org.apache.archiva.admin.model.beans.RepositoryGroup( repoGroup.getId(), new ArrayList<>( | |||||
repoGroup.getRepositories() ) ).mergedIndexPath( repoGroup.getMergedIndexPath() ).mergedIndexTtl( | repoGroup.getRepositories() ) ).mergedIndexPath( repoGroup.getMergedIndexPath() ).mergedIndexTtl( | ||||
repoGroup.getMergedIndexTtl() ).cronExpression( repoGroup.getCronExpression() ), | repoGroup.getMergedIndexTtl() ).cronExpression( repoGroup.getCronExpression() ), | ||||
getAuditInformation() ); | getAuditInformation() ); |
} | } | ||||
try | try | ||||
{ | { | ||||
return new GroupIdList( new ArrayList<String>( repositorySearch.getAllGroupIds( getPrincipal(), repos ) ) ); | |||||
return new GroupIdList( new ArrayList<>( repositorySearch.getAllGroupIds( getPrincipal(), repos ) ) ); | |||||
} | } | ||||
catch ( RepositorySearchException e ) | catch ( RepositorySearchException e ) | ||||
{ | { | ||||
{ | { | ||||
return Collections.emptyList(); | return Collections.emptyList(); | ||||
} | } | ||||
List<Artifact> artifacts = new ArrayList<Artifact>( searchResults.getReturnedHitsCount() ); | |||||
List<Artifact> artifacts = new ArrayList<>( searchResults.getReturnedHitsCount() ); | |||||
for ( SearchResultHit hit : searchResults.getHits() ) | for ( SearchResultHit hit : searchResults.getHits() ) | ||||
{ | { | ||||
// duplicate Artifact one per available version | // duplicate Artifact one per available version |
public class AddAdminRepoConsumerClosure | public class AddAdminRepoConsumerClosure | ||||
implements Closure | implements Closure | ||||
{ | { | ||||
private List<AdminRepositoryConsumer> list = new ArrayList<AdminRepositoryConsumer>(); | |||||
private List<AdminRepositoryConsumer> list = new ArrayList<>(); | |||||
private List<String> selectedIds; | private List<String> selectedIds; | ||||
private List<SyndEntry> getEntries( List<RssFeedEntry> dataEntries ) | private List<SyndEntry> getEntries( List<RssFeedEntry> dataEntries ) | ||||
{ | { | ||||
List<SyndEntry> entries = new ArrayList<SyndEntry>(); | |||||
List<SyndEntry> entries = new ArrayList<>(); | |||||
SyndEntry entry; | SyndEntry entry; | ||||
SyndContent description; | SyndContent description; |
long tmp = 0; | long tmp = 0; | ||||
RssFeedEntry entry = null; | RssFeedEntry entry = null; | ||||
List<RssFeedEntry> entries = new ArrayList<RssFeedEntry>(); | |||||
List<RssFeedEntry> entries = new ArrayList<>(); | |||||
String description = ""; | String description = ""; | ||||
int idx = 0; | int idx = 0; | ||||
for ( ArtifactMetadata artifact : artifacts ) | for ( ArtifactMetadata artifact : artifacts ) |
MetadataRepository metadataRepository ) | MetadataRepository metadataRepository ) | ||||
throws FeedException | throws FeedException | ||||
{ | { | ||||
List<ArtifactMetadata> artifacts = new ArrayList<ArtifactMetadata>(); | |||||
List<ArtifactMetadata> artifacts = new ArrayList<>(); | |||||
try | try | ||||
{ | { | ||||
for ( String repoId : metadataRepository.getRepositories() ) | for ( String repoId : metadataRepository.getRepositories() ) | ||||
long tmp = 0; | long tmp = 0; | ||||
RssFeedEntry entry = null; | RssFeedEntry entry = null; | ||||
List<RssFeedEntry> entries = new ArrayList<RssFeedEntry>(); | |||||
List<RssFeedEntry> entries = new ArrayList<>(); | |||||
String description = ""; | String description = ""; | ||||
int idx = 0; | int idx = 0; | ||||
for ( ArtifactMetadata artifact : artifacts ) | for ( ArtifactMetadata artifact : artifacts ) |
public void testNewFeed() | public void testNewFeed() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<RssFeedEntry> entries = new ArrayList<RssFeedEntry>(); | |||||
List<RssFeedEntry> entries = new ArrayList<>(); | |||||
RssFeedEntry entry = new RssFeedEntry( "Item 1" ); | RssFeedEntry entry = new RssFeedEntry( "Item 1" ); | ||||
Date whenGathered = new Date( System.currentTimeMillis() ); | Date whenGathered = new Date( System.currentTimeMillis() ); | ||||
public void testNoDataEntries() | public void testNoDataEntries() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<RssFeedEntry> entries = new ArrayList<RssFeedEntry>(); | |||||
List<RssFeedEntry> entries = new ArrayList<>(); | |||||
SyndFeed feed = | SyndFeed feed = | ||||
generator.generateFeed( "Test Feed", "The test feed from Archiva.", entries ); | generator.generateFeed( "Test Feed", "The test feed from Archiva.", entries ); | ||||
public void testProcess() | public void testProcess() | ||||
throws Exception | throws Exception | ||||
{ | { | ||||
List<ArtifactMetadata> newArtifacts = new ArrayList<ArtifactMetadata>(); | |||||
List<ArtifactMetadata> newArtifacts = new ArrayList<>(); | |||||
Date whenGathered = Calendar.getInstance().getTime(); | Date whenGathered = Calendar.getInstance().getTime(); | ||||
newArtifacts.add( createArtifact( "artifact-one", "1.0", whenGathered ) ); | newArtifacts.add( createArtifact( "artifact-one", "1.0", whenGathered ) ); |
{ | { | ||||
List<ManagedRepository> managedRepositories = getAccessibleRepositories( principal, operation ); | List<ManagedRepository> managedRepositories = getAccessibleRepositories( principal, operation ); | ||||
List<String> repoIds = new ArrayList<String>( managedRepositories.size() ); | |||||
List<String> repoIds = new ArrayList<>( managedRepositories.size() ); | |||||
for ( ManagedRepository managedRepository : managedRepositories ) | for ( ManagedRepository managedRepository : managedRepositories ) | ||||
{ | { | ||||
repoIds.add( managedRepository.getId() ); | repoIds.add( managedRepository.getId() ); | ||||
{ | { | ||||
SecuritySession securitySession = createSession( principal ); | SecuritySession securitySession = createSession( principal ); | ||||
List<ManagedRepository> managedRepositories = new ArrayList<ManagedRepository>(); | |||||
List<ManagedRepository> managedRepositories = new ArrayList<>(); | |||||
try | try | ||||
{ | { |
String artifactId, String version, String packaging ) | String artifactId, String version, String packaging ) | ||||
throws RepositoryMetadataException | throws RepositoryMetadataException | ||||
{ | { | ||||
List<String> availableVersions = new ArrayList<String>(); | |||||
List<String> availableVersions = new ArrayList<>(); | |||||
String latestVersion = version; | String latestVersion = version; | ||||
File projectDir = new File( targetPath ).getParentFile(); | File projectDir = new File( targetPath ).getParentFile(); |
UnauthorizedException | UnauthorizedException | ||||
{ | { | ||||
String auth = req.getHeader( "Authorization" ); | String auth = req.getHeader( "Authorization" ); | ||||
List<String> repoIds = new ArrayList<String>(); | |||||
List<String> repoIds = new ArrayList<>(); | |||||
if ( repositoryId != null ) | if ( repositoryId != null ) | ||||
{ | { |
public List<User> findUsersByEmailKey( String emailKey, boolean orderAscending ) | public List<User> findUsersByEmailKey( String emailKey, boolean orderAscending ) | ||||
throws UserManagerException | throws UserManagerException | ||||
{ | { | ||||
List<User> users = new ArrayList<User>(); | |||||
List<User> users = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagerPerId.values() ) | for ( UserManager userManager : userManagerPerId.values() ) | ||||
{ | { | ||||
public List<User> findUsersByFullNameKey( String fullNameKey, boolean orderAscending ) | public List<User> findUsersByFullNameKey( String fullNameKey, boolean orderAscending ) | ||||
throws UserManagerException | throws UserManagerException | ||||
{ | { | ||||
List<User> users = new ArrayList<User>(); | |||||
List<User> users = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagerPerId.values() ) | for ( UserManager userManager : userManagerPerId.values() ) | ||||
{ | { | ||||
public List<User> findUsersByQuery( UserQuery query ) | public List<User> findUsersByQuery( UserQuery query ) | ||||
throws UserManagerException | throws UserManagerException | ||||
{ | { | ||||
List<User> users = new ArrayList<User>(); | |||||
List<User> users = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagerPerId.values() ) | for ( UserManager userManager : userManagerPerId.values() ) | ||||
{ | { | ||||
public List<User> findUsersByUsernameKey( String usernameKey, boolean orderAscending ) | public List<User> findUsersByUsernameKey( String usernameKey, boolean orderAscending ) | ||||
throws UserManagerException | throws UserManagerException | ||||
{ | { | ||||
List<User> users = new ArrayList<User>(); | |||||
List<User> users = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagerPerId.values() ) | for ( UserManager userManager : userManagerPerId.values() ) | ||||
{ | { | ||||
public List<User> getUsers() | public List<User> getUsers() | ||||
throws UserManagerException | throws UserManagerException | ||||
{ | { | ||||
List<User> users = new ArrayList<User>(); | |||||
List<User> users = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagerPerId.values() ) | for ( UserManager userManager : userManagerPerId.values() ) | ||||
{ | { | ||||
public List<User> getUsers( boolean orderAscending ) | public List<User> getUsers( boolean orderAscending ) | ||||
throws UserManagerException | throws UserManagerException | ||||
{ | { | ||||
List<User> users = new ArrayList<User>(); | |||||
List<User> users = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagerPerId.values() ) | for ( UserManager userManager : userManagerPerId.values() ) | ||||
{ | { |
RedbackRuntimeConfiguration redbackRuntimeConfiguration = | RedbackRuntimeConfiguration redbackRuntimeConfiguration = | ||||
redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration(); | redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration(); | ||||
List<LdapGroupMapping> ldapGroupMappings = new ArrayList<LdapGroupMapping>( mappings.size() ); | |||||
List<LdapGroupMapping> ldapGroupMappings = new ArrayList<>( mappings.size() ); | |||||
for ( Map.Entry<String, List<String>> entry : mappings.entrySet() ) | for ( Map.Entry<String, List<String>> entry : mappings.entrySet() ) | ||||
{ | { |
List<String> userManagerImpls = | List<String> userManagerImpls = | ||||
redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration().getUserManagerImpls(); | redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration().getUserManagerImpls(); | ||||
userManagers = new ArrayList<UserManager>( userManagerImpls.size() ); | |||||
userManagers = new ArrayList<>( userManagerImpls.size() ); | |||||
for ( String beanId : userManagerImpls ) | for ( String beanId : userManagerImpls ) | ||||
{ | { | ||||
{ | { | ||||
continue; | continue; | ||||
} | } | ||||
List<String> roles = new ArrayList<String>(); | |||||
List<String> roles = new ArrayList<>(); | |||||
roles.add( RedbackRoleConstants.SYSTEM_ADMINISTRATOR_ROLE ); | roles.add( RedbackRoleConstants.SYSTEM_ADMINISTRATOR_ROLE ); | ||||
List<UserAssignment> systemAdminstrators; | List<UserAssignment> systemAdminstrators; |
throw new RbacManagerException( lastException.getMessage(), lastException ); | throw new RbacManagerException( lastException.getMessage(), lastException ); | ||||
} | } | ||||
return new ArrayList<Role>( allRoles.values() ); | |||||
return new ArrayList<>( allRoles.values() ); | |||||
} | } | ||||
public void removeRole( Role role ) | public void removeRole( Role role ) | ||||
{ | { | ||||
throw new RbacManagerException( lastException.getMessage(), lastException ); | throw new RbacManagerException( lastException.getMessage(), lastException ); | ||||
} | } | ||||
return new ArrayList<Permission>( allPermissions.values() ); | |||||
return new ArrayList<>( allPermissions.values() ); | |||||
} | } | ||||
public void removePermission( Permission permission ) | public void removePermission( Permission permission ) | ||||
{ | { | ||||
throw new RbacManagerException( lastException.getMessage(), lastException ); | throw new RbacManagerException( lastException.getMessage(), lastException ); | ||||
} | } | ||||
return new ArrayList<Operation>( allOperations.values() ); | |||||
return new ArrayList<>( allOperations.values() ); | |||||
} | } | ||||
public void removeOperation( Operation operation ) | public void removeOperation( Operation operation ) | ||||
{ | { | ||||
throw new RbacManagerException( lastException.getMessage(), lastException ); | throw new RbacManagerException( lastException.getMessage(), lastException ); | ||||
} | } | ||||
return new ArrayList<Resource>( allResources.values() ); | |||||
return new ArrayList<>( allResources.values() ); | |||||
} | } | ||||
public void removeResource( Resource resource ) | public void removeResource( Resource resource ) | ||||
{ | { | ||||
throw new RbacManagerException( lastException.getMessage(), lastException ); | throw new RbacManagerException( lastException.getMessage(), lastException ); | ||||
} | } | ||||
return new ArrayList<UserAssignment>( allUserAssignments.values() ); | |||||
return new ArrayList<>( allUserAssignments.values() ); | |||||
} | } | ||||
public List<UserAssignment> getUserAssignmentsForRoles( Collection<String> roleNames ) | public List<UserAssignment> getUserAssignmentsForRoles( Collection<String> roleNames ) | ||||
throws RbacManagerException | throws RbacManagerException | ||||
{ | { | ||||
List<UserAssignment> allUserAssignments = new ArrayList<UserAssignment>(); | |||||
List<UserAssignment> allUserAssignments = new ArrayList<>(); | |||||
boolean allFailed = true; | boolean allFailed = true; | ||||
Exception lastException = null; | Exception lastException = null; | ||||
for ( RBACManager rbacManager : rbacManagersPerId.values() ) | for ( RBACManager rbacManager : rbacManagersPerId.values() ) |
List<String> userManagerImpls = | List<String> userManagerImpls = | ||||
redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration().getUserManagerImpls(); | redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration().getUserManagerImpls(); | ||||
userManagers = new ArrayList<UserManager>( userManagerImpls.size() ); | |||||
userManagers = new ArrayList<>( userManagerImpls.size() ); | |||||
for ( String beanId : userManagerImpls ) | for ( String beanId : userManagerImpls ) | ||||
{ | { | ||||
String username = null; | String username = null; | ||||
Exception resultException = null; | Exception resultException = null; | ||||
PasswordBasedAuthenticationDataSource source = (PasswordBasedAuthenticationDataSource) ds; | PasswordBasedAuthenticationDataSource source = (PasswordBasedAuthenticationDataSource) ds; | ||||
List<AuthenticationFailureCause> authnResultErrors = new ArrayList<AuthenticationFailureCause>(); | |||||
List<AuthenticationFailureCause> authnResultErrors = new ArrayList<>(); | |||||
for ( UserManager userManager : userManagers ) | for ( UserManager userManager : userManagers ) | ||||
{ | { |
stopWatch.reset(); | stopWatch.reset(); | ||||
stopWatch.start(); | stopWatch.start(); | ||||
List<String> violations = new ArrayList<String>(); | |||||
List<String> violations = new ArrayList<>(); | |||||
for ( Entry<String, EnvironmentCheck> entry : checkers.entrySet() ) | for ( Entry<String, EnvironmentCheck> entry : checkers.entrySet() ) | ||||
{ | { | ||||
EnvironmentCheck check = entry.getValue(); | EnvironmentCheck check = entry.getValue(); | ||||
List<String> v = new ArrayList<String>(); | |||||
List<String> v = new ArrayList<>(); | |||||
check.validateEnvironment( v ); | check.validateEnvironment( v ); | ||||
log.info( "Environment Check: {} -> {} violation(s)", entry.getKey(), v.size() ); | log.info( "Environment Check: {} -> {} violation(s)", entry.getKey(), v.size() ); | ||||
for ( String s : v ) | for ( String s : v ) |
{ | { | ||||
try | try | ||||
{ | { | ||||
List<String> entriesNames = new ArrayList<String>(); | |||||
List<String> entriesNames = new ArrayList<>(); | |||||
Enumeration<? extends ZipEntry> entries = zipFile.entries(); | Enumeration<? extends ZipEntry> entries = zipFile.entries(); | ||||
while ( entries.hasMoreElements() ) | while ( entries.hasMoreElements() ) | ||||
{ | { |
{ | { | ||||
Map<String, String> users = new HashMap<String, String>(); | Map<String, String> users = new HashMap<String, String>(); | ||||
List<String> repoIds = new ArrayList<String>(); | |||||
List<String> repoIds = new ArrayList<>(); | |||||
public SecuritySystemStub() | public SecuritySystemStub() | ||||
{ | { |
private static final String TEST_NAMESPACE = "org.apache.archiva"; | private static final String TEST_NAMESPACE = "org.apache.archiva"; | ||||
private List<ArtifactMetadata> artifacts = new ArrayList<ArtifactMetadata>(); | |||||
private List<ArtifactMetadata> artifacts = new ArrayList<>(); | |||||
private List<String> versions = new ArrayList<String>(); | |||||
private List<String> versions = new ArrayList<>(); | |||||
public TestMetadataRepository() | public TestMetadataRepository() | ||||
{ | { |