@Test public void testGetArtifactsByProjectVersionMetadata() throws Exception { createArtifactWithGenericMetadataFacet( 10 ); Collection<ArtifactMetadata> artifactsByMetadata = repository.getArtifactsByProjectVersionMetadata( TEST_METADATA_KEY, TEST_METADATA_VALUE, TEST_REPO_ID ); assertThat( artifactsByMetadata ).hasSize( 1 ); ArtifactMetadata artifactMetadata = artifactsByMetadata.iterator().next(); assertThat( artifactMetadata.getId() ).isEqualTo( "projectId-1.0.jar" ); assertThat( artifactMetadata.getSha1() ).isEqualTo( TEST_SHA1 ); assertThat( artifactMetadata.getRepositoryId() ).isEqualTo( TEST_REPO_ID ); }
@Test public void testGetArtifactsByProjectVersionMetadataAllRepositories() throws Exception { createArtifactWithGenericMetadataFacet(); Collection<ArtifactMetadata> artifactsByMetadata = repository.getArtifactsByProjectVersionMetadata( TEST_METADATA_KEY, TEST_METADATA_VALUE, null ); assertThat( artifactsByMetadata ).hasSize( 1 ); }
@Test public void testGetArtifactsByProjectVersionMetadataNoRepository() throws Exception { createArtifactWithGenericMetadataFacet(); Collection<ArtifactMetadata> artifactsByMetadata = repository.getArtifactsByProjectVersionMetadata( TEST_METADATA_KEY, TEST_METADATA_VALUE, null ); assertThat( artifactsByMetadata ).hasSize( 1 ); assertThat( artifactsByMetadata.iterator().next().getRepositoryId() ).isNotNull().isNotEmpty(); }
@Override public List<Artifact> getArtifactsByProjectVersionMetadata( String key, String value, String repositoryId ) throws ArchivaRestServiceException { RepositorySession repositorySession = repositorySessionFactory.createSession(); try { List<ArtifactMetadata> artifactMetadatas = repositorySession.getRepository().getArtifactsByProjectVersionMetadata( key, value, repositoryId ); return buildArtifacts( artifactMetadatas, repositoryId ); } catch ( MetadataRepositoryException e ) { throw new ArchivaRestServiceException( e.getMessage(), e ); } finally { repositorySession.close(); } }
@Override public List<Artifact> getArtifactsByProjectVersionMetadata( String key, String value, String repositoryId ) throws ArchivaRestServiceException { RepositorySession repositorySession = repositorySessionFactory.createSession(); try { List<ArtifactMetadata> artifactMetadatas = repositorySession.getRepository().getArtifactsByProjectVersionMetadata( key, value, repositoryId ); return buildArtifacts( artifactMetadatas, repositoryId ); } catch ( MetadataRepositoryException e ) { throw new ArchivaRestServiceException( e.getMessage(), e ); } finally { repositorySession.close(); } }