From 84c614d09a7b8cbcbf41e77fd2cce4baf482be91 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Tue, 8 Jul 2008 02:01:17 +0000 Subject: [maven-release-plugin] prepare release archiva-1.1 git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@674704 13f79535-47bb-0310-9956-ffa450edef68 --- archiva-cli/pom.xml | 4 +- archiva-docs/pom.xml | 2 +- archiva-jetty/pom.xml | 7 +-- .../archiva-artifact-converter/pom.xml | 2 +- .../archiva-base/archiva-checksum/pom.xml | 2 +- .../archiva-base/archiva-common/pom.xml | 2 +- .../archiva-base/archiva-configuration/pom.xml | 2 +- .../archiva-consumers/archiva-consumer-api/pom.xml | 2 +- .../archiva-core-consumers/pom.xml | 2 +- .../archiva-database-consumers/pom.xml | 2 +- .../archiva-dependency-tree-consumer/pom.xml | 5 +- .../archiva-lucene-consumers/pom.xml | 2 +- .../archiva-signature-consumers/pom.xml | 2 +- .../archiva-base/archiva-consumers/pom.xml | 2 +- .../archiva-base/archiva-converter/pom.xml | 2 +- .../archiva-base/archiva-dependency-graph/pom.xml | 2 +- .../archiva-base/archiva-indexer/pom.xml | 2 +- archiva-modules/archiva-base/archiva-model/pom.xml | 2 +- .../archiva-base/archiva-policies/pom.xml | 2 +- archiva-modules/archiva-base/archiva-proxy/pom.xml | 2 +- .../archiva-base/archiva-repository-layer/pom.xml | 2 +- .../archiva-base/archiva-transaction/pom.xml | 2 +- .../archiva-base/archiva-xml-tools/pom.xml | 2 +- archiva-modules/archiva-base/pom.xml | 2 +- archiva-modules/archiva-database/pom.xml | 2 +- .../archiva-artifact-reports/pom.xml | 2 +- .../archiva-metadata-reports/pom.xml | 2 +- .../archiva-project-reports/pom.xml | 2 +- .../archiva-report-manager/pom.xml | 2 +- archiva-modules/archiva-reporting/pom.xml | 2 +- archiva-modules/archiva-scheduled/pom.xml | 2 +- archiva-modules/archiva-web/archiva-applet/pom.xml | 2 +- archiva-modules/archiva-web/archiva-rss/pom.xml | 4 +- .../archiva-web/archiva-security/pom.xml | 2 +- archiva-modules/archiva-web/archiva-webapp/pom.xml | 5 +- archiva-modules/archiva-web/archiva-webdav/pom.xml | 2 +- archiva-modules/archiva-web/pom.xml | 2 +- archiva-modules/pom.xml | 2 +- pom.xml | 64 +++++++++++----------- 39 files changed, 76 insertions(+), 79 deletions(-) diff --git a/archiva-cli/pom.xml b/archiva-cli/pom.xml index 6344a198b..783f1a5f9 100644 --- a/archiva-cli/pom.xml +++ b/archiva-cli/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-cli @@ -35,7 +35,7 @@ org.apache.archiva archiva-dependency-tree-consumer - 1.1-SNAPSHOT + 1.1 runtime diff --git a/archiva-docs/pom.xml b/archiva-docs/pom.xml index 82fe76302..da6608a76 100644 --- a/archiva-docs/pom.xml +++ b/archiva-docs/pom.xml @@ -21,7 +21,7 @@ org.apache.archiva archiva - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-docs diff --git a/archiva-jetty/pom.xml b/archiva-jetty/pom.xml index f7fcece19..4eab8417c 100644 --- a/archiva-jetty/pom.xml +++ b/archiva-jetty/pom.xml @@ -1,10 +1,9 @@ - + 4.0.0 org.apache.archiva archiva - 1.1-SNAPSHOT + 1.1 archiva-jetty pom @@ -257,7 +256,7 @@ - + diff --git a/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml b/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml index d5abcb843..822886f60 100644 --- a/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml +++ b/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 archiva-artifact-converter Archiva Artifact Converter diff --git a/archiva-modules/archiva-base/archiva-checksum/pom.xml b/archiva-modules/archiva-base/archiva-checksum/pom.xml index c2b7a8d5a..afc1473b7 100644 --- a/archiva-modules/archiva-base/archiva-checksum/pom.xml +++ b/archiva-modules/archiva-base/archiva-checksum/pom.xml @@ -19,7 +19,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 archiva-checksum Archiva Checksum diff --git a/archiva-modules/archiva-base/archiva-common/pom.xml b/archiva-modules/archiva-base/archiva-common/pom.xml index a6e140249..0876e0152 100644 --- a/archiva-modules/archiva-base/archiva-common/pom.xml +++ b/archiva-modules/archiva-base/archiva-common/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-common diff --git a/archiva-modules/archiva-base/archiva-configuration/pom.xml b/archiva-modules/archiva-base/archiva-configuration/pom.xml index 5946c8225..f0b8aa2f6 100644 --- a/archiva-modules/archiva-base/archiva-configuration/pom.xml +++ b/archiva-modules/archiva-base/archiva-configuration/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-configuration diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml index cde8fb7cb..dd49a7f93 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-consumers - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml index bde81f60f..36d7b1dbb 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-consumers - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml index 80309e2f4..98ff744f3 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-consumers - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml index 6bc87a5d7..44fc81020 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml @@ -1,10 +1,9 @@ - + 4.0.0 org.apache.archiva archiva-consumers - 1.1-SNAPSHOT + 1.1 archiva-dependency-tree-consumer Archiva Consumers :: Dependency Tree Consumer diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml index a6521fe0e..100605093 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-consumers - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml index abd12bac9..8aac11e42 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-consumers - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-base/archiva-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/pom.xml index 703dd1b55..cd2cc2736 100644 --- a/archiva-modules/archiva-base/archiva-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-base/archiva-converter/pom.xml b/archiva-modules/archiva-base/archiva-converter/pom.xml index c4fb15f6d..6178eb774 100644 --- a/archiva-modules/archiva-base/archiva-converter/pom.xml +++ b/archiva-modules/archiva-base/archiva-converter/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-converter diff --git a/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml b/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml index 415d7ef2e..da55ba455 100644 --- a/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml +++ b/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-dependency-graph diff --git a/archiva-modules/archiva-base/archiva-indexer/pom.xml b/archiva-modules/archiva-base/archiva-indexer/pom.xml index c94fcb642..8bba0ad96 100644 --- a/archiva-modules/archiva-base/archiva-indexer/pom.xml +++ b/archiva-modules/archiva-base/archiva-indexer/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-indexer diff --git a/archiva-modules/archiva-base/archiva-model/pom.xml b/archiva-modules/archiva-base/archiva-model/pom.xml index a875b95fa..93b45bb28 100755 --- a/archiva-modules/archiva-base/archiva-model/pom.xml +++ b/archiva-modules/archiva-base/archiva-model/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-model diff --git a/archiva-modules/archiva-base/archiva-policies/pom.xml b/archiva-modules/archiva-base/archiva-policies/pom.xml index 3d286459f..a83c43c06 100644 --- a/archiva-modules/archiva-base/archiva-policies/pom.xml +++ b/archiva-modules/archiva-base/archiva-policies/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-policies diff --git a/archiva-modules/archiva-base/archiva-proxy/pom.xml b/archiva-modules/archiva-base/archiva-proxy/pom.xml index 610cad29d..cb33abdb1 100644 --- a/archiva-modules/archiva-base/archiva-proxy/pom.xml +++ b/archiva-modules/archiva-base/archiva-proxy/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-proxy diff --git a/archiva-modules/archiva-base/archiva-repository-layer/pom.xml b/archiva-modules/archiva-base/archiva-repository-layer/pom.xml index 7e9aa4e03..1b1a18343 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/pom.xml +++ b/archiva-modules/archiva-base/archiva-repository-layer/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-repository-layer diff --git a/archiva-modules/archiva-base/archiva-transaction/pom.xml b/archiva-modules/archiva-base/archiva-transaction/pom.xml index c1f6ca8c6..0f77a023b 100644 --- a/archiva-modules/archiva-base/archiva-transaction/pom.xml +++ b/archiva-modules/archiva-base/archiva-transaction/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 archiva-transaction Archiva Transactions diff --git a/archiva-modules/archiva-base/archiva-xml-tools/pom.xml b/archiva-modules/archiva-base/archiva-xml-tools/pom.xml index a9a4010fb..1a9f3ce4a 100644 --- a/archiva-modules/archiva-base/archiva-xml-tools/pom.xml +++ b/archiva-modules/archiva-base/archiva-xml-tools/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-base - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-xml-tools diff --git a/archiva-modules/archiva-base/pom.xml b/archiva-modules/archiva-base/pom.xml index bb1fa7864..3e02a84f3 100644 --- a/archiva-modules/archiva-base/pom.xml +++ b/archiva-modules/archiva-base/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-modules - 1.1-SNAPSHOT + 1.1 archiva-base diff --git a/archiva-modules/archiva-database/pom.xml b/archiva-modules/archiva-database/pom.xml index ecbf50c58..601b3d876 100755 --- a/archiva-modules/archiva-database/pom.xml +++ b/archiva-modules/archiva-database/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-modules - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-database diff --git a/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml b/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml index a236dbc20..9feee682f 100755 --- a/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-reporting - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-artifact-reports diff --git a/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml b/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml index 4769808e0..d8be96b28 100755 --- a/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-reporting - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-metadata-reports diff --git a/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml b/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml index 15cd90611..d6a800bbe 100755 --- a/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-reporting - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-project-reports diff --git a/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml b/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml index 02a8a9af7..4935efef5 100755 --- a/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-reporting - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-report-manager diff --git a/archiva-modules/archiva-reporting/pom.xml b/archiva-modules/archiva-reporting/pom.xml index 1c7b78993..b7108abb7 100644 --- a/archiva-modules/archiva-reporting/pom.xml +++ b/archiva-modules/archiva-reporting/pom.xml @@ -20,7 +20,7 @@ org.apache.archiva archiva-modules - 1.1-SNAPSHOT + 1.1 ../pom.xml diff --git a/archiva-modules/archiva-scheduled/pom.xml b/archiva-modules/archiva-scheduled/pom.xml index 53ec59051..a797ffc0e 100644 --- a/archiva-modules/archiva-scheduled/pom.xml +++ b/archiva-modules/archiva-scheduled/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-modules - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-scheduled diff --git a/archiva-modules/archiva-web/archiva-applet/pom.xml b/archiva-modules/archiva-web/archiva-applet/pom.xml index b9cbb1710..f5d6705ba 100644 --- a/archiva-modules/archiva-web/archiva-applet/pom.xml +++ b/archiva-modules/archiva-web/archiva-applet/pom.xml @@ -23,7 +23,7 @@ org.apache.archiva archiva-web - 1.1-SNAPSHOT + 1.1 archiva-applet Archiva Web :: Applet diff --git a/archiva-modules/archiva-web/archiva-rss/pom.xml b/archiva-modules/archiva-web/archiva-rss/pom.xml index 50ed9b91d..973596b94 100644 --- a/archiva-modules/archiva-web/archiva-rss/pom.xml +++ b/archiva-modules/archiva-web/archiva-rss/pom.xml @@ -1,8 +1,8 @@ - + archiva-web org.apache.archiva - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-rss diff --git a/archiva-modules/archiva-web/archiva-security/pom.xml b/archiva-modules/archiva-web/archiva-security/pom.xml index 4b7eca7fc..dc023bfdb 100644 --- a/archiva-modules/archiva-web/archiva-security/pom.xml +++ b/archiva-modules/archiva-web/archiva-security/pom.xml @@ -22,7 +22,7 @@ org.apache.archiva archiva-web - 1.1-SNAPSHOT + 1.1 4.0.0 archiva-security diff --git a/archiva-modules/archiva-web/archiva-webapp/pom.xml b/archiva-modules/archiva-web/archiva-webapp/pom.xml index 735a37b65..834d77b92 100644 --- a/archiva-modules/archiva-web/archiva-webapp/pom.xml +++ b/archiva-modules/archiva-web/archiva-webapp/pom.xml @@ -23,7 +23,7 @@ org.apache.archiva archiva-web - 1.1-SNAPSHOT + 1.1 ../pom.xml archiva-webapp @@ -352,8 +352,7 @@ derby 10.1.3.1 - + + org.apache.maven.archiva.consumers.DatabaseUnprocessedArtifactConsumer + index-public-methods + org.apache.maven.archiva.consumers.lucene.IndexJavaPublicMethodsConsumer + + + org.apache.maven.archiva.repository.RepositoryContentFactory + index-public-methods + + + org.apache.maven.archiva.indexer.RepositoryContentIndexFactory + lucene + repoIndexFactory + + + + + org.apache.maven.archiva.repository.RepositoryContentFactory + index-public-methods + org.apache.maven.archiva.repository.RepositoryContentFactory + RepositoryContentRequest + + + org.apache.maven.archiva.configuration.ArchivaConfiguration + index-public-methods + archivaConfiguration + + + + + org.apache.maven.archiva.configuration.ArchivaConfiguration + index-public-methods + org.apache.maven.archiva.configuration.DefaultArchivaConfiguration + + + org.codehaus.plexus.registry.Registry + index-public-methods + + + org.apache.maven.archiva.policies.PreDownloadPolicy + prePolicies + + + org.apache.maven.archiva.policies.PostDownloadPolicy + postPolicies + + + + + org.codehaus.plexus.registry.Registry + index-public-methods + org.codehaus.plexus.registry.commons.CommonsConfigurationRegistry + + + + + + + + \ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar new file mode 100644 index 000000000..cc03dacc1 Binary files /dev/null and b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar differ diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml new file mode 100644 index 000000000..e7bf54bda --- /dev/null +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + org.apache.archiva + archiva-index-methods-jar-test + jar + 1.0 + archiva-index-methods-jar-test + http://maven.apache.org + + + junit + junit + 3.8.1 + test + + + diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/bytecode/BytecodeRecord.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/bytecode/BytecodeRecord.java index 1cb7422a9..888067da5 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/bytecode/BytecodeRecord.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/bytecode/BytecodeRecord.java @@ -39,28 +39,28 @@ public class BytecodeRecord private String filename; - private List classes; + private List classes; - private List methods; + private List methods; - private List files; + private List files; public ArchivaArtifact getArtifact() { return artifact; } - public List getClasses() + public List getClasses() { return classes; } - public List getFiles() + public List getFiles() { return files; } - public List getMethods() + public List getMethods() { return methods; } @@ -92,17 +92,17 @@ public class BytecodeRecord this.artifact = artifact; } - public void setClasses( List classes ) + public void setClasses( List classes ) { this.classes = classes; } - public void setFiles( List files ) + public void setFiles( List files ) { this.files = files; } - public void setMethods( List methods ) + public void setMethods( List methods ) { this.methods = methods; } -- cgit v1.2.3 From 8d428ccfd10d96868cd669a184f8e6b020632327 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Tue, 8 Jul 2008 11:20:11 +0000 Subject: [MRM-730] -search bytecode index if not found in filecontent index git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@674768 13f79535-47bb-0310-9956-ffa450edef68 --- .../maven/archiva/indexer/search/DefaultCrossRepositorySearch.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java index 98490ebe4..3ff954795 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java @@ -100,7 +100,7 @@ public class DefaultCrossRepositorySearch public SearchResults searchForBytecode( String principal, List selectedRepos, String term, SearchResultLimits limits ) { - List indexes = getHashcodeIndexes( principal, selectedRepos ); + List indexes = getBytecodeIndexes( principal, selectedRepos ); try { @@ -130,6 +130,11 @@ public class DefaultCrossRepositorySearch LuceneQuery query = new LuceneQuery( parser.parse( term ) ); SearchResults results = searchAll( query, limits, indexes ); results.getRepositories().addAll( this.localIndexedRepositories ); + + if( results.getTotalHits() == 0 ) + { + results = searchForBytecode( principal, selectedRepos, term, limits ); + } return results; } -- cgit v1.2.3 From 3b308d83e7811796bef1f8fb24d5a53ea2672a68 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Wed, 9 Jul 2008 01:59:33 +0000 Subject: removed forgotten jetty.host and jetty.port properties being set in jetty.xmxl git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675081 13f79535-47bb-0310-9956-ffa450edef68 --- archiva-jetty/src/main/conf/jetty.xml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/archiva-jetty/src/main/conf/jetty.xml b/archiva-jetty/src/main/conf/jetty.xml index 5a106f08e..53a600fd8 100644 --- a/archiva-jetty/src/main/conf/jetty.xml +++ b/archiva-jetty/src/main/conf/jetty.xml @@ -50,17 +50,6 @@ --> - - - jetty.port - 8080 - - - - jetty.host - localhost - - -- cgit v1.2.3 From 67e651bbc4677a8a99a21b3d721f969ab3b64a85 Mon Sep 17 00:00:00 2001 From: James William Dumay Date: Wed, 9 Jul 2008 04:27:30 +0000 Subject: MRM-870 - addRepositoryToGroup.action => AbstractMethodError on DeferredDocumentImpl.getXmlStandalone() * excluded necko xerces minimal as its only used by the http wagon to get an upstream file list (which we dont do) * explicitly added xercesImpl to dependencyManagement git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675093 13f79535-47bb-0310-9956-ffa450edef68 --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index 89ed75a02..235bdb309 100644 --- a/pom.xml +++ b/pom.xml @@ -228,6 +228,11 @@ + + xerces + xercesImpl + 2.8.1 + javax.activation activation @@ -826,6 +831,12 @@ org.apache.maven.wagon wagon-http-lightweight ${wagon.version} + + + nekohtml + xercesMinimal + + org.apache.maven.wagon -- cgit v1.2.3 From ce73f78809dcd1a3c039dfe9cdb583e39349eda3 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Wed, 9 Jul 2008 05:24:34 +0000 Subject: log exceptions caught in the searcher git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675097 13f79535-47bb-0310-9956-ffa450edef68 --- .../lucene/IndexJavaPublicMethodsCrossRepositorySearch.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java index 1794535dd..3d6896cba 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java @@ -40,6 +40,8 @@ import org.apache.maven.archiva.indexer.lucene.LuceneRepositoryContentRecord; import org.apache.maven.archiva.indexer.search.CrossRepositorySearch; import org.apache.maven.archiva.indexer.search.SearchResultLimits; import org.apache.maven.archiva.indexer.search.SearchResults; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Searcher used for testing purposes only. @@ -50,6 +52,8 @@ import org.apache.maven.archiva.indexer.search.SearchResults; public class IndexJavaPublicMethodsCrossRepositorySearch implements CrossRepositorySearch { + private Logger log = LoggerFactory.getLogger( IndexJavaPublicMethodsCrossRepositorySearch.class ); + private ManagedRepositoryConfiguration localIndexedRepo; private RepositoryContentIndexFactory indexFactory; @@ -82,6 +86,7 @@ public class IndexJavaPublicMethodsCrossRepositorySearch } catch ( ParseException e ) { + log.error( e.getMessage() ); } return new SearchResults(); @@ -169,7 +174,7 @@ public class IndexJavaPublicMethodsCrossRepositorySearch } catch ( java.text.ParseException e ) { - + log.error( e.getMessage() ); } } } @@ -177,7 +182,7 @@ public class IndexJavaPublicMethodsCrossRepositorySearch } catch ( IOException e ) { - + log.error( e.getMessage() ); } finally { @@ -190,7 +195,7 @@ public class IndexJavaPublicMethodsCrossRepositorySearch } catch ( IOException ie ) { - + log.error( ie.getMessage() ); } } @@ -208,7 +213,7 @@ public class IndexJavaPublicMethodsCrossRepositorySearch } catch ( RepositoryIndexSearchException e ) { - + log.error( e.getMessage() ); } } return searchableList; -- cgit v1.2.3 From 90ef668a99bd864a66757534092649ac9c269895 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Wed, 9 Jul 2008 06:12:15 +0000 Subject: remove unneccessary codes in the searcher for tests git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675099 13f79535-47bb-0310-9956-ffa450edef68 --- ...ndexJavaPublicMethodsCrossRepositorySearch.java | 48 ++++------------------ 1 file changed, 9 insertions(+), 39 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java index 3d6896cba..ea9f13311 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/maven/archiva/consumers/lucene/IndexJavaPublicMethodsCrossRepositorySearch.java @@ -37,7 +37,6 @@ import org.apache.maven.archiva.indexer.bytecode.BytecodeHandlers; import org.apache.maven.archiva.indexer.lucene.LuceneEntryConverter; import org.apache.maven.archiva.indexer.lucene.LuceneQuery; import org.apache.maven.archiva.indexer.lucene.LuceneRepositoryContentRecord; -import org.apache.maven.archiva.indexer.search.CrossRepositorySearch; import org.apache.maven.archiva.indexer.search.SearchResultLimits; import org.apache.maven.archiva.indexer.search.SearchResults; import org.slf4j.Logger; @@ -49,20 +48,14 @@ import org.slf4j.LoggerFactory; * @author Maria Odea Ching * @version */ -public class IndexJavaPublicMethodsCrossRepositorySearch - implements CrossRepositorySearch +public class IndexJavaPublicMethodsCrossRepositorySearch { private Logger log = LoggerFactory.getLogger( IndexJavaPublicMethodsCrossRepositorySearch.class ); private ManagedRepositoryConfiguration localIndexedRepo; private RepositoryContentIndexFactory indexFactory; - - public IndexJavaPublicMethodsCrossRepositorySearch() - { - - } - + public IndexJavaPublicMethodsCrossRepositorySearch( ManagedRepositoryConfiguration localIndexedRepo, RepositoryContentIndexFactory indexFactory ) { this.localIndexedRepo = localIndexedRepo; @@ -70,40 +63,17 @@ public class IndexJavaPublicMethodsCrossRepositorySearch } public SearchResults searchForBytecode( String principal, List selectedRepos, String term, - SearchResultLimits limits ) + SearchResultLimits limits ) throws ParseException { List indexes = new ArrayList(); indexes.add( indexFactory.createBytecodeIndex( localIndexedRepo ) ); - try - { - QueryParser parser = new BytecodeHandlers().getQueryParser(); - LuceneQuery query = new LuceneQuery( parser.parse( term ) ); - SearchResults results = searchAll( query, limits, indexes ); - results.getRepositories().add( localIndexedRepo ); - - return results; - } - catch ( ParseException e ) - { - log.error( e.getMessage() ); - } - - return new SearchResults(); - } - - public SearchResults searchForChecksum( String principal, List selectedRepos, String checksum, - SearchResultLimits limits ) - { - // TODO Auto-generated method stub - return null; - } - - public SearchResults searchForTerm( String principal, List selectedRepos, String term, - SearchResultLimits limits ) - { - // TODO Auto-generated method stub - return null; + QueryParser parser = new BytecodeHandlers().getQueryParser(); + LuceneQuery query = new LuceneQuery( parser.parse( term ) ); + SearchResults results = searchAll( query, limits, indexes ); + results.getRepositories().add( localIndexedRepo ); + + return results; } private SearchResults searchAll( LuceneQuery luceneQuery, SearchResultLimits limits, List indexes ) -- cgit v1.2.3 From 6ce6a9c2180d85115f35437f0531d11371a6dbe7 Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Wed, 9 Jul 2008 12:19:05 +0000 Subject: MRM-869 git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675141 13f79535-47bb-0310-9956-ffa450edef68 --- .../proxy/DefaultRepositoryProxyConnectors.java | 62 ++++++++++++---------- 1 file changed, 33 insertions(+), 29 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java index 398734973..602fdcb77 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java @@ -76,6 +76,7 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Properties; + /** * DefaultRepositoryProxyConnectors * @@ -88,7 +89,7 @@ public class DefaultRepositoryProxyConnectors implements RepositoryProxyConnectors, RegistryListener, Initializable { private Logger log = LoggerFactory.getLogger( DefaultRepositoryProxyConnectors.class ); - + /** * @plexus.requirement */ @@ -169,7 +170,7 @@ public class DefaultRepositoryProxyConnectors try { File downloadedFile = - transferFile( connector, targetRepository, targetPath, localFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, repository, localFile, requestProperties ); if ( fileExists( downloadedFile ) ) { @@ -230,7 +231,7 @@ public class DefaultRepositoryProxyConnectors try { - transferFile( connector, targetRepository, targetPath, localRepoFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, repository, localRepoFile, requestProperties ); if ( hasBeenUpdated( localRepoFile, originalMetadataTimestamp ) ) { @@ -348,7 +349,7 @@ public class DefaultRepositoryProxyConnectors long originalMetadataTimestamp = getLastModified( localRepoFile ); try { - transferFile( connector, targetRepository, targetPath, localRepoFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, repository, localRepoFile, requestProperties ); if ( hasBeenUpdated( localRepoFile, originalMetadataTimestamp ) ) { @@ -484,19 +485,20 @@ public class DefaultRepositoryProxyConnectors /** * Perform the transfer of the file. * - * @param connector the connector configuration to use. - * @param remoteRepository the remote repository get the resource from. - * @param remotePath the path in the remote repository to the resource to get. - * @param localFile the local file to place the downloaded resource into + * @param connector the connector configuration to use. + * @param remoteRepository the remote repository get the resource from. + * @param remotePath the path in the remote repository to the resource to get. + * @param repository the managed repository that will hold the transfered file + * @param localFile the local file to place the downloaded resource into * @param requestProperties the request properties to utilize for policy handling. * @return the local file that was downloaded, or null if not downloaded. - * @throws NotFoundException if the file was not found on the remote repository. - * @throws NotModifiedException if the localFile was present, and the resource was present on remote repository, - * but the remote resource is not newer than the local File. - * @throws ProxyException if transfer was unsuccessful. + * @throws NotFoundException if the file was not found on the remote repository. + * @throws NotModifiedException if the localFile was present, and the resource was present on remote repository, but + * the remote resource is not newer than the local File. + * @throws ProxyException if transfer was unsuccessful. */ private File transferFile( ProxyConnector connector, RemoteRepositoryContent remoteRepository, String remotePath, - File localFile, Properties requestProperties ) + ManagedRepositoryContent repository, File localFile, Properties requestProperties ) throws ProxyException, NotModifiedException { String url = remoteRepository.getURL().getUrl(); @@ -560,10 +562,10 @@ public class DefaultRepositoryProxyConnectors boolean connected = connectToRepository( connector, wagon, remoteRepository ); if ( connected ) { - localFile = transferSimpleFile( wagon, remoteRepository, remotePath, localFile ); + localFile = transferSimpleFile( wagon, remoteRepository, remotePath, repository, localFile ); - transferChecksum( wagon, remoteRepository, remotePath, localFile, ".sha1" ); - transferChecksum( wagon, remoteRepository, remotePath, localFile, ".md5" ); + transferChecksum( wagon, remoteRepository, remotePath, repository, localFile, ".sha1" ); + transferChecksum( wagon, remoteRepository, remotePath, repository, localFile, ".md5" ); } } catch ( NotFoundException e ) @@ -627,12 +629,13 @@ public class DefaultRepositoryProxyConnectors * @param wagon the wagon instance (should already be connected) to use. * @param remoteRepository the remote repository to transfer from. * @param remotePath the remote path to the resource to get. + * @param repository the managed repository that will hold the transfered file * @param localFile the local file that should contain the downloaded contents * @param type the type of checksum to transfer (example: ".md5" or ".sha1") * @throws ProxyException if copying the downloaded file into place did not succeed. */ private void transferChecksum( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, - File localFile, String type ) + ManagedRepositoryContent repository, File localFile, String type ) throws ProxyException { String url = remoteRepository.getURL().getUrl() + remotePath; @@ -646,7 +649,7 @@ public class DefaultRepositoryProxyConnectors try { File hashFile = new File( localFile.getAbsolutePath() + type ); - transferSimpleFile( wagon, remoteRepository, remotePath + type, hashFile ); + transferSimpleFile( wagon, remoteRepository, remotePath + type, repository, hashFile ); log.debug( "Checksum" + type + " Downloaded: " + hashFile ); } catch ( NotFoundException e ) @@ -672,16 +675,17 @@ public class DefaultRepositoryProxyConnectors /** * Perform the transfer of the remote file to the local file specified. * - * @param wagon the wagon instance to use. + * @param wagon the wagon instance to use. * @param remoteRepository the remote repository to use - * @param remotePath the remote path to attempt to get - * @param localFile the local file to save to + * @param remotePath the remote path to attempt to get + * @param repository the managed repository that will hold the transfered file + * @param localFile the local file to save to * @return The local file that was transfered. * @throws ProxyException if there was a problem moving the downloaded file into place. * @throws WagonException if there was a problem tranfering the file. */ private File transferSimpleFile( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, - File localFile ) + ManagedRepositoryContent repository, File localFile ) throws ProxyException { assert ( remotePath != null ); @@ -691,9 +695,8 @@ public class DefaultRepositoryProxyConnectors try { - localFile.getParentFile().mkdirs(); - temp = File.createTempFile(localFile.getName() + ".", null, localFile.getParentFile()); - + temp = File.createTempFile( localFile.getName() + ".", null, new File( repository.getRepoRoot() ) ); + boolean success = false; if ( !localFile.exists() ) @@ -849,6 +852,7 @@ public class DefaultRepositoryProxyConnectors throw new ProxyException( "Unable to overwrite existing target file: " + target.getAbsolutePath() ); } + target.getParentFile().mkdirs(); if ( !temp.renameTo( target ) ) { log.warn( "Unable to rename tmp file to its final name... resorting to copy command." ); @@ -1004,15 +1008,15 @@ public class DefaultRepositoryProxyConnectors { /* do nothing */ } - + private void logProcess( String managedRepoId, String resource, String event ) { - + } - + private void logRejection( String managedRepoId, String remoteRepoId, String resource, String reason ) { - + } private void initConnectorsAndNetworkProxies() -- cgit v1.2.3 From a693bc6872a96e7d09b27e172bfa28571dc3cfbe Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Wed, 9 Jul 2008 13:19:04 +0000 Subject: regression git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675159 13f79535-47bb-0310-9956-ffa450edef68 --- .../proxy/DefaultRepositoryProxyConnectors.java | 62 ++++++++++------------ 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java index 602fdcb77..398734973 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java @@ -76,7 +76,6 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Properties; - /** * DefaultRepositoryProxyConnectors * @@ -89,7 +88,7 @@ public class DefaultRepositoryProxyConnectors implements RepositoryProxyConnectors, RegistryListener, Initializable { private Logger log = LoggerFactory.getLogger( DefaultRepositoryProxyConnectors.class ); - + /** * @plexus.requirement */ @@ -170,7 +169,7 @@ public class DefaultRepositoryProxyConnectors try { File downloadedFile = - transferFile( connector, targetRepository, targetPath, repository, localFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, localFile, requestProperties ); if ( fileExists( downloadedFile ) ) { @@ -231,7 +230,7 @@ public class DefaultRepositoryProxyConnectors try { - transferFile( connector, targetRepository, targetPath, repository, localRepoFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, localRepoFile, requestProperties ); if ( hasBeenUpdated( localRepoFile, originalMetadataTimestamp ) ) { @@ -349,7 +348,7 @@ public class DefaultRepositoryProxyConnectors long originalMetadataTimestamp = getLastModified( localRepoFile ); try { - transferFile( connector, targetRepository, targetPath, repository, localRepoFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, localRepoFile, requestProperties ); if ( hasBeenUpdated( localRepoFile, originalMetadataTimestamp ) ) { @@ -485,20 +484,19 @@ public class DefaultRepositoryProxyConnectors /** * Perform the transfer of the file. * - * @param connector the connector configuration to use. - * @param remoteRepository the remote repository get the resource from. - * @param remotePath the path in the remote repository to the resource to get. - * @param repository the managed repository that will hold the transfered file - * @param localFile the local file to place the downloaded resource into + * @param connector the connector configuration to use. + * @param remoteRepository the remote repository get the resource from. + * @param remotePath the path in the remote repository to the resource to get. + * @param localFile the local file to place the downloaded resource into * @param requestProperties the request properties to utilize for policy handling. * @return the local file that was downloaded, or null if not downloaded. - * @throws NotFoundException if the file was not found on the remote repository. - * @throws NotModifiedException if the localFile was present, and the resource was present on remote repository, but - * the remote resource is not newer than the local File. - * @throws ProxyException if transfer was unsuccessful. + * @throws NotFoundException if the file was not found on the remote repository. + * @throws NotModifiedException if the localFile was present, and the resource was present on remote repository, + * but the remote resource is not newer than the local File. + * @throws ProxyException if transfer was unsuccessful. */ private File transferFile( ProxyConnector connector, RemoteRepositoryContent remoteRepository, String remotePath, - ManagedRepositoryContent repository, File localFile, Properties requestProperties ) + File localFile, Properties requestProperties ) throws ProxyException, NotModifiedException { String url = remoteRepository.getURL().getUrl(); @@ -562,10 +560,10 @@ public class DefaultRepositoryProxyConnectors boolean connected = connectToRepository( connector, wagon, remoteRepository ); if ( connected ) { - localFile = transferSimpleFile( wagon, remoteRepository, remotePath, repository, localFile ); + localFile = transferSimpleFile( wagon, remoteRepository, remotePath, localFile ); - transferChecksum( wagon, remoteRepository, remotePath, repository, localFile, ".sha1" ); - transferChecksum( wagon, remoteRepository, remotePath, repository, localFile, ".md5" ); + transferChecksum( wagon, remoteRepository, remotePath, localFile, ".sha1" ); + transferChecksum( wagon, remoteRepository, remotePath, localFile, ".md5" ); } } catch ( NotFoundException e ) @@ -629,13 +627,12 @@ public class DefaultRepositoryProxyConnectors * @param wagon the wagon instance (should already be connected) to use. * @param remoteRepository the remote repository to transfer from. * @param remotePath the remote path to the resource to get. - * @param repository the managed repository that will hold the transfered file * @param localFile the local file that should contain the downloaded contents * @param type the type of checksum to transfer (example: ".md5" or ".sha1") * @throws ProxyException if copying the downloaded file into place did not succeed. */ private void transferChecksum( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, - ManagedRepositoryContent repository, File localFile, String type ) + File localFile, String type ) throws ProxyException { String url = remoteRepository.getURL().getUrl() + remotePath; @@ -649,7 +646,7 @@ public class DefaultRepositoryProxyConnectors try { File hashFile = new File( localFile.getAbsolutePath() + type ); - transferSimpleFile( wagon, remoteRepository, remotePath + type, repository, hashFile ); + transferSimpleFile( wagon, remoteRepository, remotePath + type, hashFile ); log.debug( "Checksum" + type + " Downloaded: " + hashFile ); } catch ( NotFoundException e ) @@ -675,17 +672,16 @@ public class DefaultRepositoryProxyConnectors /** * Perform the transfer of the remote file to the local file specified. * - * @param wagon the wagon instance to use. + * @param wagon the wagon instance to use. * @param remoteRepository the remote repository to use - * @param remotePath the remote path to attempt to get - * @param repository the managed repository that will hold the transfered file - * @param localFile the local file to save to + * @param remotePath the remote path to attempt to get + * @param localFile the local file to save to * @return The local file that was transfered. * @throws ProxyException if there was a problem moving the downloaded file into place. * @throws WagonException if there was a problem tranfering the file. */ private File transferSimpleFile( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, - ManagedRepositoryContent repository, File localFile ) + File localFile ) throws ProxyException { assert ( remotePath != null ); @@ -695,8 +691,9 @@ public class DefaultRepositoryProxyConnectors try { - temp = File.createTempFile( localFile.getName() + ".", null, new File( repository.getRepoRoot() ) ); - + localFile.getParentFile().mkdirs(); + temp = File.createTempFile(localFile.getName() + ".", null, localFile.getParentFile()); + boolean success = false; if ( !localFile.exists() ) @@ -852,7 +849,6 @@ public class DefaultRepositoryProxyConnectors throw new ProxyException( "Unable to overwrite existing target file: " + target.getAbsolutePath() ); } - target.getParentFile().mkdirs(); if ( !temp.renameTo( target ) ) { log.warn( "Unable to rename tmp file to its final name... resorting to copy command." ); @@ -1008,15 +1004,15 @@ public class DefaultRepositoryProxyConnectors { /* do nothing */ } - + private void logProcess( String managedRepoId, String resource, String event ) { - + } - + private void logRejection( String managedRepoId, String remoteRepoId, String resource, String reason ) { - + } private void initConnectorsAndNetworkProxies() -- cgit v1.2.3 From 15b6ddae0ba7e3feb160982a264fdad985648147 Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Wed, 9 Jul 2008 14:00:22 +0000 Subject: MRM-869 git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675174 13f79535-47bb-0310-9956-ffa450edef68 --- .../proxy/DefaultRepositoryProxyConnectors.java | 39 ++++++++++++---------- .../maven/archiva/proxy/AbstractProxyTestCase.java | 20 +++++------ .../archiva/proxy/CacheFailuresTransferTest.java | 21 ++++++------ .../maven/archiva/proxy/ErrorHandlingTest.java | 2 +- 4 files changed, 43 insertions(+), 39 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java index 398734973..c2937fe3e 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java @@ -88,7 +88,7 @@ public class DefaultRepositoryProxyConnectors implements RepositoryProxyConnectors, RegistryListener, Initializable { private Logger log = LoggerFactory.getLogger( DefaultRepositoryProxyConnectors.class ); - + /** * @plexus.requirement */ @@ -169,7 +169,7 @@ public class DefaultRepositoryProxyConnectors try { File downloadedFile = - transferFile( connector, targetRepository, targetPath, localFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, repository, localFile, requestProperties ); if ( fileExists( downloadedFile ) ) { @@ -230,7 +230,7 @@ public class DefaultRepositoryProxyConnectors try { - transferFile( connector, targetRepository, targetPath, localRepoFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, repository, localRepoFile, requestProperties ); if ( hasBeenUpdated( localRepoFile, originalMetadataTimestamp ) ) { @@ -348,7 +348,7 @@ public class DefaultRepositoryProxyConnectors long originalMetadataTimestamp = getLastModified( localRepoFile ); try { - transferFile( connector, targetRepository, targetPath, localRepoFile, requestProperties ); + transferFile( connector, targetRepository, targetPath, repository, localRepoFile, requestProperties ); if ( hasBeenUpdated( localRepoFile, originalMetadataTimestamp ) ) { @@ -487,6 +487,7 @@ public class DefaultRepositoryProxyConnectors * @param connector the connector configuration to use. * @param remoteRepository the remote repository get the resource from. * @param remotePath the path in the remote repository to the resource to get. + * @param repository the managed repository that will hold the file * @param localFile the local file to place the downloaded resource into * @param requestProperties the request properties to utilize for policy handling. * @return the local file that was downloaded, or null if not downloaded. @@ -496,7 +497,7 @@ public class DefaultRepositoryProxyConnectors * @throws ProxyException if transfer was unsuccessful. */ private File transferFile( ProxyConnector connector, RemoteRepositoryContent remoteRepository, String remotePath, - File localFile, Properties requestProperties ) + ManagedRepositoryContent repository, File localFile, Properties requestProperties ) throws ProxyException, NotModifiedException { String url = remoteRepository.getURL().getUrl(); @@ -560,10 +561,10 @@ public class DefaultRepositoryProxyConnectors boolean connected = connectToRepository( connector, wagon, remoteRepository ); if ( connected ) { - localFile = transferSimpleFile( wagon, remoteRepository, remotePath, localFile ); + localFile = transferSimpleFile( wagon, remoteRepository, remotePath, repository, localFile ); - transferChecksum( wagon, remoteRepository, remotePath, localFile, ".sha1" ); - transferChecksum( wagon, remoteRepository, remotePath, localFile, ".md5" ); + transferChecksum( wagon, remoteRepository, remotePath, repository, localFile, ".sha1" ); + transferChecksum( wagon, remoteRepository, remotePath, repository, localFile, ".md5" ); } } catch ( NotFoundException e ) @@ -627,12 +628,13 @@ public class DefaultRepositoryProxyConnectors * @param wagon the wagon instance (should already be connected) to use. * @param remoteRepository the remote repository to transfer from. * @param remotePath the remote path to the resource to get. + * @param repository the managed repository that will hold the file * @param localFile the local file that should contain the downloaded contents * @param type the type of checksum to transfer (example: ".md5" or ".sha1") * @throws ProxyException if copying the downloaded file into place did not succeed. */ private void transferChecksum( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, - File localFile, String type ) + ManagedRepositoryContent repository, File localFile, String type ) throws ProxyException { String url = remoteRepository.getURL().getUrl() + remotePath; @@ -646,7 +648,7 @@ public class DefaultRepositoryProxyConnectors try { File hashFile = new File( localFile.getAbsolutePath() + type ); - transferSimpleFile( wagon, remoteRepository, remotePath + type, hashFile ); + transferSimpleFile( wagon, remoteRepository, remotePath + type, repository, hashFile ); log.debug( "Checksum" + type + " Downloaded: " + hashFile ); } catch ( NotFoundException e ) @@ -675,13 +677,14 @@ public class DefaultRepositoryProxyConnectors * @param wagon the wagon instance to use. * @param remoteRepository the remote repository to use * @param remotePath the remote path to attempt to get + * @param repository the managed repository that will hold the file * @param localFile the local file to save to * @return The local file that was transfered. * @throws ProxyException if there was a problem moving the downloaded file into place. * @throws WagonException if there was a problem tranfering the file. */ private File transferSimpleFile( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, - File localFile ) + ManagedRepositoryContent repository, File localFile ) throws ProxyException { assert ( remotePath != null ); @@ -691,9 +694,8 @@ public class DefaultRepositoryProxyConnectors try { - localFile.getParentFile().mkdirs(); - temp = File.createTempFile(localFile.getName() + ".", null, localFile.getParentFile()); - + temp = File.createTempFile(localFile.getName() + ".", null, new File( repository.getRepoRoot() )); + boolean success = false; if ( !localFile.exists() ) @@ -849,6 +851,7 @@ public class DefaultRepositoryProxyConnectors throw new ProxyException( "Unable to overwrite existing target file: " + target.getAbsolutePath() ); } + target.getParentFile().mkdirs(); if ( !temp.renameTo( target ) ) { log.warn( "Unable to rename tmp file to its final name... resorting to copy command." ); @@ -1004,15 +1007,15 @@ public class DefaultRepositoryProxyConnectors { /* do nothing */ } - + private void logProcess( String managedRepoId, String resource, String event ) { - + } - + private void logRejection( String managedRepoId, String remoteRepoId, String resource, String reason ) { - + } private void initConnectorsAndNetworkProxies() diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java index db4a91dc2..e71ea65b0 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java @@ -88,7 +88,7 @@ public abstract class AbstractProxyTestCase protected static final String REPOPATH_LEGACY_MANAGED = "src/test/repositories/legacy-managed"; protected static final String REPOPATH_LEGACY_MANAGED_TARGET = "target/test-repository/legacy-managed"; - + protected static final ArgumentsMatcher customWagonGetIfNewerMatcher = new ArgumentsMatcher() { public boolean matches(Object[] expected, Object[] actual) { @@ -103,10 +103,10 @@ public abstract class AbstractProxyTestCase return ArrayUtils.toString(arguments); } }; - + protected static final ArgumentsMatcher customWagonGetMatcher = new ArgumentsMatcher() { - public boolean matches(Object[] expected, Object[] actual) + public boolean matches(Object[] expected, Object[] actual) { if (expected.length == 2 && actual.length == 2) { @@ -114,23 +114,23 @@ public abstract class AbstractProxyTestCase { return true; } - + if (expected[0] == null) { return actual[0] == null; } - + if (actual[0] == null) { return expected[0] == null; } - + return expected[0].equals(actual[0]); } return false; } - public String toString(Object[] arguments) + public String toString(Object[] arguments) { return ArrayUtils.toString(arguments); } @@ -540,6 +540,9 @@ public abstract class AbstractProxyTestCase FileUtils.deleteDirectory( destDir ); } + // Make the destination dir. + destDir.mkdirs(); + // Test the source dir. if ( !sourceDir.exists() ) { @@ -555,9 +558,6 @@ public abstract class AbstractProxyTestCase fail( "Unable to setup testable managed repository, source is not a directory: " + sourceDir ); } - // Make the destination dir. - destDir.mkdirs(); - // Copy directory structure. copyDirectoryStructure( sourceDir, destDir ); } diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.java b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.java index 70aec32fc..119211d6c 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.java @@ -63,11 +63,11 @@ public class CacheFailuresTransferTest SnapshotsPolicy.ALWAYS, CachedFailuresPolicy.YES ); saveConnector( ID_DEFAULT_MANAGED, "badproxied2", ChecksumPolicy.FIX, ReleasesPolicy.ALWAYS, SnapshotsPolicy.ALWAYS, CachedFailuresPolicy.YES ); - + wagonMock.get( path, new File( expectedFile.getParentFile(), expectedFile.getName() + ".tmp" ) ); - + wagonMockControl.setMatcher(customWagonGetMatcher); - + wagonMockControl.setThrowable( new ResourceDoesNotExistException( "resource does not exist." ), 2 ); wagonMockControl.replay(); @@ -75,11 +75,11 @@ public class CacheFailuresTransferTest File downloadedFile = proxyHandler.fetchFromProxies( managedDefaultRepository, artifact ); wagonMockControl.verify(); - - // Second attempt to download same artifact use cache + + // Second attempt to download same artifact use cache wagonMockControl.reset(); wagonMockControl.replay(); - downloadedFile = proxyHandler.fetchFromProxies( managedDefaultRepository, artifact ); + downloadedFile = proxyHandler.fetchFromProxies( managedDefaultRepository, artifact ); wagonMockControl.verify(); assertNotDownloaded( downloadedFile ); @@ -108,7 +108,7 @@ public class CacheFailuresTransferTest SnapshotsPolicy.ALWAYS, CachedFailuresPolicy.NO ); wagonMock.get( path, new File( expectedFile.getParentFile(), expectedFile.getName() + ".tmp" ) ); - + wagonMockControl.setMatcher(customWagonGetMatcher); wagonMockControl.setThrowable( new ResourceDoesNotExistException( "resource does not exist." ), 2 ); @@ -118,15 +118,15 @@ public class CacheFailuresTransferTest wagonMockControl.verify(); - // Second attempt to download same artifact DOES NOT use cache + // Second attempt to download same artifact DOES NOT use cache wagonMockControl.reset(); wagonMock.get( path, new File( expectedFile.getParentFile(), expectedFile.getName() + ".tmp" ) ); - + wagonMockControl.setMatcher(customWagonGetMatcher); wagonMockControl.setThrowable( new ResourceDoesNotExistException( "resource does not exist." ), 2 ); wagonMockControl.replay(); - downloadedFile = proxyHandler.fetchFromProxies( managedDefaultRepository, artifact ); + downloadedFile = proxyHandler.fetchFromProxies( managedDefaultRepository, artifact ); wagonMockControl.verify(); @@ -138,6 +138,7 @@ public class CacheFailuresTransferTest throws Exception { String path = "org/apache/maven/test/get-in-second-proxy/1.0/get-in-second-proxy-1.0.jar"; + setupTestableManagedRepository( path ); File expectedFile = new File( managedDefaultDir, path ); ArtifactReference artifact = managedDefaultRepository.toArtifactReference( path ); diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/ErrorHandlingTest.java b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/ErrorHandlingTest.java index c0c60a720..4b96766c7 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/ErrorHandlingTest.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/ErrorHandlingTest.java @@ -551,7 +551,7 @@ public class ErrorHandlingTest private File createExpectedTempFile( File expectedFile ) { - return new File( expectedFile.getParentFile(), expectedFile.getName() + ".tmp" ).getAbsoluteFile(); + return new File( managedDefaultDir, expectedFile.getName() + ".tmp" ).getAbsoluteFile(); } private void confirmSingleFailure( String path, String id ) -- cgit v1.2.3 From 2b2e21c61390fc0691f8ee0fa1296528d3f57aa2 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Thu, 10 Jul 2008 02:17:04 +0000 Subject: [MRM-861] -added pagination to search results page git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675415 13f79535-47bb-0310-9956-ffa450edef68 --- .../maven/archiva/web/action/SearchAction.java | 34 +++++++++-- .../src/main/webapp/WEB-INF/jsp/results.jsp | 68 ++++++++++++++++++++- .../src/main/webapp/images/icon_next_page.gif | Bin 0 -> 315 bytes .../main/webapp/images/icon_next_page_disabled.gif | Bin 0 -> 80 bytes .../src/main/webapp/images/icon_prev_page.gif | Bin 0 -> 317 bytes .../main/webapp/images/icon_prev_page_disabled.gif | Bin 0 -> 73 bytes 6 files changed, 96 insertions(+), 6 deletions(-) create mode 100644 archiva-modules/archiva-web/archiva-webapp/src/main/webapp/images/icon_next_page.gif create mode 100644 archiva-modules/archiva-web/archiva-webapp/src/main/webapp/images/icon_next_page_disabled.gif create mode 100644 archiva-modules/archiva-web/archiva-webapp/src/main/webapp/images/icon_prev_page.gif create mode 100644 archiva-modules/archiva-web/archiva-webapp/src/main/webapp/images/icon_prev_page_disabled.gif diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java index 6e91a5799..3c7f5056d 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java @@ -45,7 +45,7 @@ import org.codehaus.plexus.xwork.action.PlexusActionSupport; */ public class SearchAction extends PlexusActionSupport -{ +{ /** * Query string. */ @@ -76,6 +76,10 @@ public class SearchAction private static final String ARTIFACT = "artifact"; private List databaseResults; + + private int currentPage = 0; + + private int totalPages; public String quickSearch() throws MalformedURLException, RepositoryIndexException, RepositoryIndexSearchException @@ -87,8 +91,8 @@ public class SearchAction */ assert q != null && q.length() != 0; - - SearchResultLimits limits = new SearchResultLimits( 0 ); + + SearchResultLimits limits = new SearchResultLimits( currentPage ); List selectedRepos = getObservableRepos(); if ( CollectionUtils.isEmpty( selectedRepos ) ) @@ -103,7 +107,9 @@ public class SearchAction addActionError( "No results found" ); return INPUT; } - + + totalPages = results.getTotalHits() / limits.getPageSize(); + // TODO: filter / combine the artifacts by version? (is that even possible with non-artifact hits?) /* I don't think that we should, as I expect us to utilize the 'score' system in lucene in @@ -197,4 +203,24 @@ public class SearchAction { return databaseResults; } + + public void setCurrentPage( int page ) + { + this.currentPage = page; + } + + public int getCurrentPage() + { + return currentPage; + } + + public int getTotalPages() + { + return totalPages; + } + + public void setTotalPages( int totalPages ) + { + this.totalPages = totalPages; + } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/results.jsp b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/results.jsp index 3367c299f..3bda27b14 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/results.jsp +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/results.jsp @@ -32,6 +32,11 @@

Search

+ + + + +
+ + @@ -103,12 +105,16 @@ - - - - - - + + + + + + + + + + -- cgit v1.2.3 From a5d144eec42a9943e07125acf729856d8b169c80 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Sun, 13 Jul 2008 14:05:28 +0000 Subject: [MRM-872] -merge metadatas of the repositories under a virtual repo git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@676322 13f79535-47bb-0310-9956-ffa450edef68 --- .../archiva/webdav/ArchivaDavResourceFactory.java | 115 ++++++++++++++++++--- .../maven/archiva/webdav/RepositoryServlet.java | 9 +- .../RepositoryServletRepositoryGroupTest.java | 42 ++++---- 3 files changed, 130 insertions(+), 36 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java index 544f62b3c..edce70ff0 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java @@ -43,6 +43,7 @@ import org.apache.jackrabbit.webdav.lock.SimpleLockManager; import org.apache.maven.archiva.common.utils.PathUtil; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.RepositoryGroupConfiguration; +import org.apache.maven.archiva.model.ArchivaRepositoryMetadata; import org.apache.maven.archiva.model.ArtifactReference; import org.apache.maven.archiva.model.ProjectReference; import org.apache.maven.archiva.model.VersionedReference; @@ -59,6 +60,9 @@ import org.apache.maven.archiva.repository.content.RepositoryRequest; import org.apache.maven.archiva.repository.layout.LayoutException; import org.apache.maven.archiva.repository.metadata.MetadataTools; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataException; +import org.apache.maven.archiva.repository.metadata.RepositoryMetadataMerge; +import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader; +import org.apache.maven.archiva.repository.metadata.RepositoryMetadataWriter; import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; import org.apache.maven.archiva.security.ArchivaXworkUser; import org.apache.maven.archiva.security.ServletAuthenticator; @@ -69,6 +73,10 @@ import org.apache.maven.model.DistributionManagement; import org.apache.maven.model.Model; import org.apache.maven.model.Relocation; import org.apache.maven.model.io.xpp3.MavenXpp3Reader; +import org.codehaus.plexus.evaluator.DefaultExpressionEvaluator; +import org.codehaus.plexus.evaluator.EvaluatorException; +import org.codehaus.plexus.evaluator.ExpressionEvaluator; +import org.codehaus.plexus.evaluator.sources.SystemPropertyExpressionSource; import org.codehaus.plexus.redback.authentication.AuthenticationException; import org.codehaus.plexus.redback.authentication.AuthenticationResult; import org.codehaus.plexus.redback.authorization.AuthorizationException; @@ -90,7 +98,7 @@ import com.opensymphony.xwork.ActionContext; */ public class ArchivaDavResourceFactory implements DavResourceFactory, Auditable -{ +{ private static final String PROXIED_SUFFIX = " (proxied)"; private static final String HTTP_PUT_METHOD = "PUT"; @@ -142,7 +150,6 @@ public class ArchivaDavResourceFactory */ private HttpAuthenticator httpAuth; - /** * Lock Manager - use simple implementation from JackRabbit */ @@ -150,7 +157,9 @@ public class ArchivaDavResourceFactory /** @plexus.requirement */ private RepositoryContentConsumers consumers; - + + private String defaultMergedMetadataLocation = "${appserver.base}/data/maven-metadata.xml"; + public DavResource createResource( final DavResourceLocator locator, final DavServletRequest request, final DavServletResponse response ) throws DavException @@ -192,8 +201,9 @@ public class ArchivaDavResourceFactory } List availableResources = new ArrayList(); + List resourcesInAbsolutePath = new ArrayList(); DavException e = null; - + for ( String repositoryId : repositories ) { ManagedRepositoryContent managedRepository = null; @@ -207,8 +217,9 @@ public class ArchivaDavResourceFactory throw new DavException( HttpServletResponse.SC_NOT_FOUND, "Invalid managed repository <" + repositoryId + ">" ); } - + DavResource resource = null; + if ( !locator.getResourcePath().startsWith( ArchivaDavResource.HIDDEN_PATH_PREFIX ) ) { if ( managedRepository != null ) @@ -242,8 +253,11 @@ public class ArchivaDavResourceFactory e = new DavException( HttpServletResponse.SC_NOT_FOUND, "Resource does not exist" ); } else - { + { availableResources.add( resource ); + + String logicalResource = RepositoryPathUtil.getLogicalResource( locator.getResourcePath() ); + resourcesInAbsolutePath.add( managedRepository.getRepoRoot() + logicalResource ); } } else @@ -251,22 +265,63 @@ public class ArchivaDavResourceFactory e = new DavException( HttpServletResponse.SC_NOT_FOUND, "Repository does not exist" ); } } - } - - if (availableResources.isEmpty()) + } + + if ( availableResources.isEmpty() ) { throw e; } - if ( request.getRequestURI().endsWith( "metadata.xml" ) ) - { + // merge metadata only when requested via the repo group + if ( request.getRequestURI().endsWith( "metadata.xml" ) && repoGroupConfig != null ) + { // TODO MRM-872 : must merge all available metadatas - // use RepositoryMetadataMerge for the merging of the versions - // - // Deng: I'll continue this tomorrow, everything is getting blurry now + ArchivaRepositoryMetadata mergedMetadata = new ArchivaRepositoryMetadata(); + for ( String resourceAbsPath : resourcesInAbsolutePath ) + { + try + { + File metadataFile = new File( resourceAbsPath ); + ArchivaRepositoryMetadata repoMetadata = RepositoryMetadataReader.read( metadataFile ); + mergedMetadata = RepositoryMetadataMerge.merge( mergedMetadata, repoMetadata ); + } + catch ( RepositoryMetadataException r ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "Error occurred while reading metadata file." ); + } + } + + try + { + if( StringUtils.contains( defaultMergedMetadataLocation, "${" ) ) + { + defaultMergedMetadataLocation = + evaluateExpressions( defaultMergedMetadataLocation ); + } + File resourceFile = writeMergedMetadataToFile( mergedMetadata, defaultMergedMetadataLocation ); + + LogicalResource logicalResource = + new LogicalResource( RepositoryPathUtil.getLogicalResource( locator.getResourcePath() ) ); + + ArchivaDavResource metadataResource = + new ArchivaDavResource( resourceFile.getAbsolutePath(), logicalResource.getPath(), null, + request.getRemoteAddr(), request.getDavSession(), archivaLocator, this, + mimeTypes, auditListeners, consumers ); + availableResources.add( 0, metadataResource ); + } + catch ( EvaluatorException ee ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, ee.getMessage() ); + } + catch ( RepositoryMetadataException r ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "Error occurred while writing metadata file." ); + } } - - DavResource resource = availableResources.get( 0 ); + + DavResource resource = availableResources.get( 0 ); setHeaders(response, locator, resource ); // compatibility with MRM-440 to ensure browsing the repository works ok @@ -832,4 +887,32 @@ public class ArchivaDavResourceFactory return allow; } + private File writeMergedMetadataToFile( ArchivaRepositoryMetadata mergedMetadata, String outputFilename ) + throws EvaluatorException, RepositoryMetadataException + { + File outputFile = new File( outputFilename ); + outputFile.getParentFile().mkdirs(); + RepositoryMetadataWriter.write( mergedMetadata, outputFile ); + + return outputFile; + } + + private String evaluateExpressions( String outputFilename ) + throws EvaluatorException + { + ExpressionEvaluator expressionEvaluator = new DefaultExpressionEvaluator(); + expressionEvaluator.addExpressionSource( new SystemPropertyExpressionSource() ); + + return expressionEvaluator.expand( outputFilename ); + } + + public String getDefaultMergedMetadataLocation() + { + return defaultMergedMetadataLocation; + } + + public void setDefaultMergedMetadataLocation( String defaultMergedMetadataLocation ) + { + this.defaultMergedMetadataLocation = defaultMergedMetadataLocation; + } } diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java index 4cdffad27..cb46493c8 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java @@ -28,6 +28,7 @@ import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.io.FileUtils; import org.apache.jackrabbit.webdav.DavException; import org.apache.jackrabbit.webdav.DavLocatorFactory; import org.apache.jackrabbit.webdav.DavMethods; @@ -104,6 +105,7 @@ public class RepositoryServlet DavMethods.isDeltaVMethod( webdavRequest ) && !( DavMethods.DAV_VERSION_CONTROL == methodCode || DavMethods.DAV_REPORT == methodCode ); WebdavResponse webdavResponse = new WebdavResponseImpl( response, noCache ); + DavResource resource = null; try { @@ -114,7 +116,7 @@ public class RepositoryServlet } // check matching if=header for lock-token relevant operations - DavResource resource = + resource = getResourceFactory().createResource( webdavRequest.getRequestLocator(), webdavRequest, webdavResponse ); if ( !isPreconditionValid( webdavRequest, resource ) ) @@ -156,6 +158,11 @@ public class RepositoryServlet } finally { + if( resource != null && resource.getResourcePath().endsWith( "metadata.xml" ) ); + { + String tmpFile = ( (ArchivaDavResourceFactory) getResourceFactory() ).getDefaultMergedMetadataLocation(); + FileUtils.deleteQuietly( new File( tmpFile ) ); + } getDavSessionProvider().releaseSession( webdavRequest ); } } diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java index f06c73cd1..60e1e24ae 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java @@ -30,6 +30,8 @@ import org.apache.commons.io.FileUtils; import org.apache.maven.archiva.configuration.Configuration; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.configuration.RepositoryGroupConfiguration; +import org.apache.maven.archiva.model.ArchivaRepositoryMetadata; +import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader; import com.meterware.httpunit.GetMethodWebRequest; import com.meterware.httpunit.PutMethodWebRequest; @@ -176,7 +178,7 @@ public class RepositoryServletRepositoryGroupTest WebResponse response = sc.getResponse( request ); assertResponseNotFound( response ); - } + } /* * Test Case 3.a @@ -212,7 +214,7 @@ public class RepositoryServletRepositoryGroupTest throws Exception { WebRequest request = new GetMethodWebRequest( "http://machine.com/repository/" + REPO_GROUP_WITH_VALID_REPOS ); - WebResponse response = sc.getResponse( request ); + WebResponse response = sc.getResponse( request ); assertNotNull( "Should have received a response", response ); assertEquals( "Should have been an 401 response code.", HttpServletResponse.SC_UNAUTHORIZED, response.getResponseCode() ); @@ -221,16 +223,16 @@ public class RepositoryServletRepositoryGroupTest // MRM-872 public void testGetMergedMetadata() throws Exception - { - // first metadata file - String resourceName = "dummy/dummy-merged-metadata-resource/maven-metadata.xml"; + { + // first metadata file + String resourceName = "dummy/dummy-merged-metadata-resource/maven-metadata.xml"; File dummyInternalResourceFile = new File( repoRootFirst, resourceName ); dummyInternalResourceFile.getParentFile().mkdirs(); - FileUtils.writeStringToFile( dummyInternalResourceFile, "" + - "dummydummy-merged-metadata-resource" + - "1.01.01.0" + - "2.520080708095554", null ); + FileUtils.writeStringToFile( dummyInternalResourceFile, "\n" + + "\ndummy\ndummy-merged-metadata-resource\n" + + "\n1.0\n1.0\n\n1.0\n" + + "2.5\n\n20080708095554\n\n", null ); //second metadata file resourceName = "dummy/dummy-merged-metadata-resource/maven-metadata.xml"; @@ -239,22 +241,24 @@ public class RepositoryServletRepositoryGroupTest FileUtils.writeStringToFile( dummyInternalResourceFile, "" + "dummydummy-merged-metadata-resource" + "2.02.01.0" + - "1.52.020080709095554" + + "1.52.020080709095554" + "", null ); WebRequest request = new GetMethodWebRequest( "http://machine.com/repository/" + REPO_GROUP_WITH_VALID_REPOS + "/dummy/" + "dummy-merged-metadata-resource/maven-metadata.xml" ); - WebResponse response = sc.getResource( request ); + WebResponse response = sc.getResource( request ); - String expectedString = "" + - "dummydummy-merged-metadata-resource" + - "2.51.0" + - "1.52.02.520080709095554" + - ""; - - //assertResponseOK( response ); - //assertEquals( "Expected file contents", expectedString, response.getText() ); + File returnedMetadata = new File( getBasedir(), "/target/test-classes/retrievedMetadataFile.xml"); + FileUtils.writeStringToFile( returnedMetadata, response.getText() ); + ArchivaRepositoryMetadata metadata = RepositoryMetadataReader.read( returnedMetadata ); + + assertResponseOK( response ); + assertEquals( "Versions list size", 4, metadata.getAvailableVersions().size() ); + assertTrue( "Versions list contains version 1.0", metadata.getAvailableVersions().contains( "1.0" ) ); + assertTrue( "Versions list contains version 1.5", metadata.getAvailableVersions().contains( "1.5" ) ); + assertTrue( "Versions list contains version 2.0", metadata.getAvailableVersions().contains( "2.0" ) ); + assertTrue( "Versions list contains version 2.5", metadata.getAvailableVersions().contains( "2.5" ) ); } protected void assertResponseMethodNotAllowed( WebResponse response ) -- cgit v1.2.3 From 7f83fefd8d94efea0faff0b02fe483da7f778bef Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Mon, 14 Jul 2008 09:04:34 +0000 Subject: [MRM-872] -generate checksums for the merged metadata -additional fixes for handling the requests for the merged metadata and it's checksums git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@676516 13f79535-47bb-0310-9956-ffa450edef68 --- .../archiva/webdav/ArchivaDavResourceFactory.java | 215 ++++++++++++++------- .../maven/archiva/webdav/RepositoryServlet.java | 9 +- .../RepositoryServletRepositoryGroupTest.java | 29 ++- .../maven/archiva/webdav/RepositoryServletTest.xml | 14 ++ 4 files changed, 186 insertions(+), 81 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java index edce70ff0..679c3daf3 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java @@ -30,6 +30,7 @@ import java.util.Map; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; import org.apache.jackrabbit.webdav.DavException; import org.apache.jackrabbit.webdav.DavResource; @@ -73,10 +74,9 @@ import org.apache.maven.model.DistributionManagement; import org.apache.maven.model.Model; import org.apache.maven.model.Relocation; import org.apache.maven.model.io.xpp3.MavenXpp3Reader; -import org.codehaus.plexus.evaluator.DefaultExpressionEvaluator; -import org.codehaus.plexus.evaluator.EvaluatorException; -import org.codehaus.plexus.evaluator.ExpressionEvaluator; -import org.codehaus.plexus.evaluator.sources.SystemPropertyExpressionSource; +import org.codehaus.plexus.digest.ChecksumFile; +import org.codehaus.plexus.digest.Digester; +import org.codehaus.plexus.digest.DigesterException; import org.codehaus.plexus.redback.authentication.AuthenticationException; import org.codehaus.plexus.redback.authentication.AuthenticationResult; import org.codehaus.plexus.redback.authorization.AuthorizationException; @@ -155,11 +155,28 @@ public class ArchivaDavResourceFactory */ private final LockManager lockManager = new SimpleLockManager(); - /** @plexus.requirement */ + /** + * @plexus.requirement + */ private RepositoryContentConsumers consumers; - - private String defaultMergedMetadataLocation = "${appserver.base}/data/maven-metadata.xml"; + /** + * @plexus.requirement + */ + private ChecksumFile checksum; + + /** + * @plexus.requirement role-hint="sha1" + */ + private Digester digestSha1; + + /** + * @plexus.requirement role-hint="md5"; + */ + private Digester digestMd5; + + private static final String mergedMetadataFilename = "/merged-maven-metadata.xml"; + public DavResource createResource( final DavResourceLocator locator, final DavServletRequest request, final DavServletResponse response ) throws DavException @@ -242,7 +259,7 @@ public class ArchivaDavResourceFactory } } } - catch ( DavException de ) + catch ( DavException de ) { e = de; continue; @@ -271,56 +288,91 @@ public class ArchivaDavResourceFactory { throw e; } - - // merge metadata only when requested via the repo group - if ( request.getRequestURI().endsWith( "metadata.xml" ) && repoGroupConfig != null ) + + String requestedResource = request.getRequestURI(); + + // MRM-872 : merge all available metadata + // merge metadata only when requested via the repo group + if ( ( repositoryRequest.isMetadata( requestedResource ) || ( requestedResource.endsWith( "metadata.xml.sha1" ) || requestedResource.endsWith( "metadata.xml.md5" ) ) ) && + repoGroupConfig != null ) { - // TODO MRM-872 : must merge all available metadatas - ArchivaRepositoryMetadata mergedMetadata = new ArchivaRepositoryMetadata(); - for ( String resourceAbsPath : resourcesInAbsolutePath ) - { - try - { - File metadataFile = new File( resourceAbsPath ); - ArchivaRepositoryMetadata repoMetadata = RepositoryMetadataReader.read( metadataFile ); - mergedMetadata = RepositoryMetadataMerge.merge( mergedMetadata, repoMetadata ); - } - catch ( RepositoryMetadataException r ) - { - throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, - "Error occurred while reading metadata file." ); - } - } - - try - { - if( StringUtils.contains( defaultMergedMetadataLocation, "${" ) ) - { - defaultMergedMetadataLocation = - evaluateExpressions( defaultMergedMetadataLocation ); - } - File resourceFile = writeMergedMetadataToFile( mergedMetadata, defaultMergedMetadataLocation ); + // this should only be at the project level not version level! + if( isProjectReference( requestedResource ) ) + { + String artifactId = StringUtils.substringBeforeLast( requestedResource.replace( '\\', '/' ), "/" ); + artifactId = StringUtils.substringAfterLast( artifactId, "/" ); - LogicalResource logicalResource = - new LogicalResource( RepositoryPathUtil.getLogicalResource( locator.getResourcePath() ) ); - - ArchivaDavResource metadataResource = - new ArchivaDavResource( resourceFile.getAbsolutePath(), logicalResource.getPath(), null, - request.getRemoteAddr(), request.getDavSession(), archivaLocator, this, - mimeTypes, auditListeners, consumers ); - availableResources.add( 0, metadataResource ); - } - catch ( EvaluatorException ee ) - { - throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, ee.getMessage() ); - } - catch ( RepositoryMetadataException r ) - { - throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, - "Error occurred while writing metadata file." ); + ArchivaDavResource res = ( ArchivaDavResource ) availableResources.get( 0 ); + String filePath = StringUtils.substringBeforeLast( res.getLocalResource().getAbsolutePath().replace( '\\', '/' ), "/" ); + filePath = filePath + mergedMetadataFilename; + + // for MRM-872 handle checksums of the merged metadata files + if( repositoryRequest.isSupportFile( requestedResource ) ) + { + File metadataChecksum = new File( filePath + "." + + StringUtils.substringAfterLast( requestedResource, "." ) ); + if( metadataChecksum.exists() ) + { + LogicalResource logicalResource = + new LogicalResource( RepositoryPathUtil.getLogicalResource( locator.getResourcePath() ) ); + + ArchivaDavResource metadataChecksumResource = + new ArchivaDavResource( metadataChecksum.getAbsolutePath(), logicalResource.getPath(), null, + request.getRemoteAddr(), request.getDavSession(), archivaLocator, this, + mimeTypes, auditListeners, consumers ); + availableResources.add( 0, metadataChecksumResource ); + } + } + else + { // merge the metadata of all repos under group + ArchivaRepositoryMetadata mergedMetadata = new ArchivaRepositoryMetadata(); + for ( String resourceAbsPath : resourcesInAbsolutePath ) + { + try + { + File metadataFile = new File( resourceAbsPath ); + ArchivaRepositoryMetadata repoMetadata = RepositoryMetadataReader.read( metadataFile ); + mergedMetadata = RepositoryMetadataMerge.merge( mergedMetadata, repoMetadata ); + } + catch ( RepositoryMetadataException r ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "Error occurred while reading metadata file." ); + } + } + + try + { + File resourceFile = writeMergedMetadataToFile( mergedMetadata, filePath ); + + LogicalResource logicalResource = + new LogicalResource( RepositoryPathUtil.getLogicalResource( locator.getResourcePath() ) ); + + ArchivaDavResource metadataResource = + new ArchivaDavResource( resourceFile.getAbsolutePath(), logicalResource.getPath(), null, + request.getRemoteAddr(), request.getDavSession(), archivaLocator, this, + mimeTypes, auditListeners, consumers ); + availableResources.add( 0, metadataResource ); + } + catch ( RepositoryMetadataException r ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "Error occurred while writing metadata file." ); + } + catch ( IOException ie ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "Error occurred while generating checksum files." ); + } + catch ( DigesterException de ) + { + throw new DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "Error occurred while generating checksum files." ); + } + } } } - + DavResource resource = availableResources.get( 0 ); setHeaders(response, locator, resource ); @@ -888,31 +940,48 @@ public class ArchivaDavResourceFactory } private File writeMergedMetadataToFile( ArchivaRepositoryMetadata mergedMetadata, String outputFilename ) - throws EvaluatorException, RepositoryMetadataException - { - File outputFile = new File( outputFilename ); + throws RepositoryMetadataException, DigesterException, IOException + { + File outputFile = new File( outputFilename ); + if( outputFile.exists() ) + { + FileUtils.deleteQuietly( outputFile ); + } + outputFile.getParentFile().mkdirs(); RepositoryMetadataWriter.write( mergedMetadata, outputFile ); + createChecksumFile( outputFilename, digestSha1 ); + createChecksumFile( outputFilename, digestMd5 ); + return outputFile; } - private String evaluateExpressions( String outputFilename ) - throws EvaluatorException - { - ExpressionEvaluator expressionEvaluator = new DefaultExpressionEvaluator(); - expressionEvaluator.addExpressionSource( new SystemPropertyExpressionSource() ); - - return expressionEvaluator.expand( outputFilename ); + private void createChecksumFile( String path, Digester digester ) + throws DigesterException, IOException + { + File checksumFile = new File( path + digester.getFilenameExtension() ); + if ( !checksumFile.exists() ) + { + FileUtils.deleteQuietly( checksumFile ); + checksum.createChecksum( new File( path ), digester ); + } + else if ( !checksumFile.isFile() ) + { + log.error( "Checksum file is not a file." ); + } } - - public String getDefaultMergedMetadataLocation() - { - return defaultMergedMetadataLocation; + + private boolean isProjectReference( String requestedResource ) + { + try + { + VersionedReference versionRef = metadataTools.toVersionedReference( requestedResource ); + return false; + } + catch ( RepositoryMetadataException re ) + { + return true; + } } - - public void setDefaultMergedMetadataLocation( String defaultMergedMetadataLocation ) - { - this.defaultMergedMetadataLocation = defaultMergedMetadataLocation; - } } diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java index cb46493c8..5fa2d3bd7 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/RepositoryServlet.java @@ -29,6 +29,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.io.FileUtils; +import org.apache.commons.lang.StringUtils; import org.apache.jackrabbit.webdav.DavException; import org.apache.jackrabbit.webdav.DavLocatorFactory; import org.apache.jackrabbit.webdav.DavMethods; @@ -45,7 +46,6 @@ import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.ConfigurationEvent; import org.apache.maven.archiva.configuration.ConfigurationListener; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.repository.audit.AuditEvent; import org.apache.maven.archiva.security.ServletAuthenticator; import org.codehaus.plexus.redback.xwork.filter.authentication.HttpAuthenticator; import org.codehaus.plexus.spring.PlexusToSpringUtils; @@ -157,12 +157,7 @@ public class RepositoryServlet } } finally - { - if( resource != null && resource.getResourcePath().endsWith( "metadata.xml" ) ); - { - String tmpFile = ( (ArchivaDavResourceFactory) getResourceFactory() ).getDefaultMergedMetadataLocation(); - FileUtils.deleteQuietly( new File( tmpFile ) ); - } + { getDavSessionProvider().releaseSession( webdavRequest ); } } diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java index 60e1e24ae..e3c3303bd 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java @@ -252,13 +252,40 @@ public class RepositoryServletRepositoryGroupTest File returnedMetadata = new File( getBasedir(), "/target/test-classes/retrievedMetadataFile.xml"); FileUtils.writeStringToFile( returnedMetadata, response.getText() ); ArchivaRepositoryMetadata metadata = RepositoryMetadataReader.read( returnedMetadata ); - + assertResponseOK( response ); assertEquals( "Versions list size", 4, metadata.getAvailableVersions().size() ); assertTrue( "Versions list contains version 1.0", metadata.getAvailableVersions().contains( "1.0" ) ); assertTrue( "Versions list contains version 1.5", metadata.getAvailableVersions().contains( "1.5" ) ); assertTrue( "Versions list contains version 2.0", metadata.getAvailableVersions().contains( "2.0" ) ); assertTrue( "Versions list contains version 2.5", metadata.getAvailableVersions().contains( "2.5" ) ); + + //check if the checksum files were generated + File checksumFileSha1 = new File( repoRootFirst, resourceName + ".sha1" ); + checksumFileSha1.getParentFile().mkdirs(); + FileUtils.writeStringToFile( checksumFileSha1, "3290853214d3687134", null ); + + File checksumFileMd5 = new File( repoRootFirst, resourceName + ".md5" ); + checksumFileMd5.getParentFile().mkdirs(); + FileUtils.writeStringToFile( checksumFileMd5, "98745897234eda12836423", null ); + + // request the sha1 checksum of the metadata + request = + new GetMethodWebRequest( "http://machine.com/repository/" + REPO_GROUP_WITH_VALID_REPOS + "/dummy/" + + "dummy-merged-metadata-resource/maven-metadata.xml.sha1" ); + response = sc.getResource( request ); + + assertResponseOK( response ); + assertEquals( "d2321a573e0488bca571b624f891104009408dd8 merged-maven-metadata.xml", response.getText() ); + + // request the md5 checksum of the metadata + request = + new GetMethodWebRequest( "http://machine.com/repository/" + REPO_GROUP_WITH_VALID_REPOS + "/dummy/" + + "dummy-merged-metadata-resource/maven-metadata.xml.md5" ); + response = sc.getResource( request ); + + assertResponseOK( response ); + assertEquals( "79d271fbe8bd1d17b23273937750d407 merged-maven-metadata.xml", response.getText().trim() ); } protected void assertResponseMethodNotAllowed( WebResponse response ) diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml b/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml index f40d694f2..83fd2a4e6 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml @@ -152,6 +152,20 @@ org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers default + + org.codehaus.plexus.digest.ChecksumFile + checksum + + + org.codehaus.plexus.digest.Digester + sha1 + digestSha1 + + + org.codehaus.plexus.digest.Digester + md5 + digestMd5 + -- cgit v1.2.3 From e0566ec1c16ce752410bc04e1d3905b95c41a913 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Mon, 14 Jul 2008 09:23:33 +0000 Subject: [MRM-872] -write the merged metadata into maven-metadata-${repoGroupId}.xml instead of merged-maven-metadata.xml git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@676526 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/maven/archiva/webdav/ArchivaDavResourceFactory.java | 8 +++----- .../archiva/webdav/RepositoryServletRepositoryGroupTest.java | 4 ++-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java index 679c3daf3..39e21c38f 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java @@ -175,8 +175,6 @@ public class ArchivaDavResourceFactory */ private Digester digestMd5; - private static final String mergedMetadataFilename = "/merged-maven-metadata.xml"; - public DavResource createResource( final DavResourceLocator locator, final DavServletRequest request, final DavServletResponse response ) throws DavException @@ -303,9 +301,9 @@ public class ArchivaDavResourceFactory artifactId = StringUtils.substringAfterLast( artifactId, "/" ); ArchivaDavResource res = ( ArchivaDavResource ) availableResources.get( 0 ); - String filePath = StringUtils.substringBeforeLast( res.getLocalResource().getAbsolutePath().replace( '\\', '/' ), "/" ); - filePath = filePath + mergedMetadataFilename; - + String filePath = StringUtils.substringBeforeLast( res.getLocalResource().getAbsolutePath().replace( '\\', '/' ), "/" ); + filePath = filePath + "/maven-metadata-" + repoGroupConfig.getId() + ".xml"; + // for MRM-872 handle checksums of the merged metadata files if( repositoryRequest.isSupportFile( requestedResource ) ) { diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java index e3c3303bd..26ff32ee1 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java @@ -276,7 +276,7 @@ public class RepositoryServletRepositoryGroupTest response = sc.getResource( request ); assertResponseOK( response ); - assertEquals( "d2321a573e0488bca571b624f891104009408dd8 merged-maven-metadata.xml", response.getText() ); + assertEquals( "d2321a573e0488bca571b624f891104009408dd8 maven-metadata-group-with-valid-repos.xml", response.getText() ); // request the md5 checksum of the metadata request = @@ -285,7 +285,7 @@ public class RepositoryServletRepositoryGroupTest response = sc.getResource( request ); assertResponseOK( response ); - assertEquals( "79d271fbe8bd1d17b23273937750d407 merged-maven-metadata.xml", response.getText().trim() ); + assertEquals( "79d271fbe8bd1d17b23273937750d407 maven-metadata-group-with-valid-repos.xml", response.getText().trim() ); } protected void assertResponseMethodNotAllowed( WebResponse response ) -- cgit v1.2.3 From 20fb87d33bc4219588b6b974bdbf238b85d6f783 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Tue, 15 Jul 2008 09:59:23 +0000 Subject: include the bytecode index to the searcheables in searchForTerm(..) instead of just searching it if the file content search returned nothing git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@676854 13f79535-47bb-0310-9956-ffa450edef68 --- .../maven/archiva/indexer/search/DefaultCrossRepositorySearch.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java index 469ff679b..a2c813a19 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java @@ -123,6 +123,8 @@ public class DefaultCrossRepositorySearch public SearchResults searchForTerm( String principal, List selectedRepos, String term, SearchResultLimits limits ) { List indexes = getFileContentIndexes( principal, selectedRepos ); + List bytecodeIndices = getBytecodeIndexes( principal, selectedRepos ); + indexes.addAll( bytecodeIndices ); try { @@ -131,11 +133,6 @@ public class DefaultCrossRepositorySearch SearchResults results = searchAll( query, limits, indexes ); results.getRepositories().addAll( this.localIndexedRepositories ); - if( results.getTotalHits() == 0 ) - { - results = searchForBytecode( principal, selectedRepos, term, limits ); - } - return results; } catch ( ParseException e ) -- cgit v1.2.3 From 7da05e7cd45d8314072a2d1f8829abd78435a0bc Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Wed, 16 Jul 2008 08:46:38 +0000 Subject: [MRM-864] -use a lucene Filter with BooleanQuery and the LuceneQuery for searching within the search results -added a checkbox in the general search page to search from the results only -maintain a list of previous query strings if searchResultsOnly option is enabled in general search git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@677197 13f79535-47bb-0310-9956-ffa450edef68 --- .../indexer/search/CrossRepositorySearch.java | 13 ++++ .../search/DefaultCrossRepositorySearch.java | 53 +++++++++++--- .../search/DefaultCrossRepositorySearchTest.java | 57 +++++++++++++-- .../maven/archiva/web/action/SearchAction.java | 84 +++++++++++++++++++++- .../WEB-INF/jsp/include/quickSearchForm.jspf | 2 + .../src/main/webapp/WEB-INF/jsp/results.jsp | 2 + 6 files changed, 196 insertions(+), 15 deletions(-) diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/CrossRepositorySearch.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/CrossRepositorySearch.java index 73c8cf61a..63e21151c 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/CrossRepositorySearch.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/CrossRepositorySearch.java @@ -39,6 +39,19 @@ public interface CrossRepositorySearch */ public SearchResults searchForTerm( String principal, List selectedRepos, String term, SearchResultLimits limits ); + /** + * Search for a specific term from the previous search results. + * + * @param principal the user doing the search. + * @param selectedRepos the repositories to search from. + * @param term the term to search for. + * @param limits the limits to apply to the search results. + * @param previousSearchTerms the list of the previous search terms. + * @return the results + */ + public SearchResults searchForTerm( String principal, List selectedRepos, String term, + SearchResultLimits limits, List previousSearchTerms ); + /** * Search for the specific bytecode across all repositories. * diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java index a2c813a19..8565acc46 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearch.java @@ -27,8 +27,12 @@ import org.apache.lucene.document.Document; import org.apache.lucene.queryParser.MultiFieldQueryParser; import org.apache.lucene.queryParser.ParseException; import org.apache.lucene.queryParser.QueryParser; +import org.apache.lucene.search.BooleanClause; +import org.apache.lucene.search.BooleanQuery; +import org.apache.lucene.search.Filter; import org.apache.lucene.search.Hits; import org.apache.lucene.search.MultiSearcher; +import org.apache.lucene.search.QueryWrapperFilter; import org.apache.lucene.search.Searchable; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.ConfigurationNames; @@ -84,7 +88,7 @@ public class DefaultCrossRepositorySearch QueryParser parser = new MultiFieldQueryParser( new String[]{HashcodesKeys.MD5, HashcodesKeys.SHA1}, new HashcodesHandlers().getAnalyzer() ); LuceneQuery query = new LuceneQuery( parser.parse( checksum ) ); - SearchResults results = searchAll( query, limits, indexes ); + SearchResults results = searchAll( query, limits, indexes, null ); results.getRepositories().addAll( this.localIndexedRepositories ); return results; @@ -106,7 +110,7 @@ public class DefaultCrossRepositorySearch { QueryParser parser = new BytecodeHandlers().getQueryParser(); LuceneQuery query = new LuceneQuery( parser.parse( term ) ); - SearchResults results = searchAll( query, limits, indexes ); + SearchResults results = searchAll( query, limits, indexes, null ); results.getRepositories().addAll( this.localIndexedRepositories ); return results; @@ -120,7 +124,14 @@ public class DefaultCrossRepositorySearch return new SearchResults(); } + public SearchResults searchForTerm( String principal, List selectedRepos, String term, SearchResultLimits limits ) + { + return searchForTerm( principal, selectedRepos, term, limits, null ); + } + + public SearchResults searchForTerm( String principal, List selectedRepos, String term, + SearchResultLimits limits, List previousSearchTerms ) { List indexes = getFileContentIndexes( principal, selectedRepos ); List bytecodeIndices = getBytecodeIndexes( principal, selectedRepos ); @@ -129,8 +140,26 @@ public class DefaultCrossRepositorySearch try { QueryParser parser = new FileContentHandlers().getQueryParser(); - LuceneQuery query = new LuceneQuery( parser.parse( term ) ); - SearchResults results = searchAll( query, limits, indexes ); + LuceneQuery query = null; + SearchResults results = null; + if( previousSearchTerms == null || previousSearchTerms.isEmpty() ) + { + query = new LuceneQuery( parser.parse( term ) ); + results = searchAll( query, limits, indexes, null ); + } + else + { + // AND the previous search terms + BooleanQuery booleanQuery = new BooleanQuery(); + for( String previousSearchTerm : previousSearchTerms ) + { + booleanQuery.add( parser.parse( previousSearchTerm ), BooleanClause.Occur.MUST ); + } + + query = new LuceneQuery( booleanQuery ); + Filter filter = new QueryWrapperFilter( parser.parse( term ) ); + results = searchAll( query, limits, indexes, filter ); + } results.getRepositories().addAll( this.localIndexedRepositories ); return results; @@ -141,10 +170,10 @@ public class DefaultCrossRepositorySearch } // empty results. - return new SearchResults(); + return new SearchResults(); } - - private SearchResults searchAll( LuceneQuery luceneQuery, SearchResultLimits limits, List indexes ) + + private SearchResults searchAll( LuceneQuery luceneQuery, SearchResultLimits limits, List indexes, Filter filter ) { org.apache.lucene.search.Query specificQuery = luceneQuery.getLuceneQuery(); @@ -175,7 +204,15 @@ public class DefaultCrossRepositorySearch searcher = new MultiSearcher( searchables ); // Perform the search. - Hits hits = searcher.search( specificQuery ); + Hits hits = null; + if( filter != null ) + { + hits = searcher.search( specificQuery, filter ); + } + else + { + hits = searcher.search( specificQuery ); + } int hitCount = hits.length(); diff --git a/archiva-modules/archiva-base/archiva-indexer/src/test/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearchTest.java b/archiva-modules/archiva-base/archiva-indexer/src/test/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearchTest.java index a503d6f8b..576b54481 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/test/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearchTest.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/test/java/org/apache/maven/archiva/indexer/search/DefaultCrossRepositorySearchTest.java @@ -140,7 +140,7 @@ public class DefaultCrossRepositorySearchTest "org","org2","org3","org4","org5","org6","org7" }; - assertSearchResults( expectedRepos, expectedResults, search, "org" ); + assertSearchResults( expectedRepos, expectedResults, search, "org", null ); } public void testSearchTerm_Junit() @@ -156,7 +156,7 @@ public class DefaultCrossRepositorySearchTest "junit","junit2","junit3" }; - assertSearchResults( expectedRepos, expectedResults, search, "junit" ); + assertSearchResults( expectedRepos, expectedResults, search, "junit", null ); } public void testSearchInvalidTerm() @@ -172,10 +172,49 @@ public class DefaultCrossRepositorySearchTest // Nothing. }; - assertSearchResults( expectedRepos, expectedResults, search, "monosodium" ); + assertSearchResults( expectedRepos, expectedResults, search, "monosodium", null ); } - private void assertSearchResults( String expectedRepos[], String expectedResults[], CrossRepositorySearch search, String term ) + public void testSearchWithinSearchResults() + throws Exception + { + CrossRepositorySearch search = lookupCrossRepositorySearch(); + + String expectedRepos[] = new String[] { + TEST_DEFAULT_REPO_ID + }; + + String expectedResults[] = new String[] { + "org","org2","org3","org4","org5","org6","org7" + }; + + // first search + assertSearchResults( expectedRepos, expectedResults, search, "org", null ); + + List previousSearchTerms = new ArrayList(); + previousSearchTerms.add( "org" ); + String secondSearchExpectedResults[] = new String[] { + "org.apache.maven.archiva.record", "org.apache.maven.archiva.record2", + "org.apache.maven.archiva.record3", "org.apache.maven.archiva.record4", + "org.apache.maven.archiva.record5", "org.apache.maven.archiva.record6", + "org.apache.maven.archiva.record7" + }; + + //second search + assertSearchResults( expectedRepos, secondSearchExpectedResults, search, "org.apache.maven.archiva.record", + previousSearchTerms ); + + previousSearchTerms.add( "org.apache.maven.archiva.record" ); + String thirdSearchExpectedResults[] = new String[] { + "junit", "junit2", "junit3" + }; + + //third search + assertSearchResults( expectedRepos, thirdSearchExpectedResults, search, "junit", previousSearchTerms ); + } + + private void assertSearchResults( String expectedRepos[], String expectedResults[], CrossRepositorySearch search, + String term, List previousSearchTerms ) throws Exception { SearchResultLimits limits = new SearchResultLimits( 0 ); @@ -184,7 +223,15 @@ public class DefaultCrossRepositorySearchTest List selectedRepos = new ArrayList(); selectedRepos.addAll( Arrays.asList( expectedRepos ) ); - SearchResults results = search.searchForTerm( "guest", selectedRepos, term, limits ); + SearchResults results = null; + if( previousSearchTerms == null ) + { + results = search.searchForTerm( "guest", selectedRepos, term, limits ); + } + else + { + results = search.searchForTerm( "guest", selectedRepos, term, limits, previousSearchTerms ); + } assertNotNull( "Search Results should not be null.", results ); assertEquals( "Repository Hits", expectedRepos.length, results.getRepositories().size() ); diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java index d797c072c..92b203c84 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/SearchAction.java @@ -20,6 +20,7 @@ package org.apache.maven.archiva.web.action; */ import java.net.MalformedURLException; +import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -83,6 +84,12 @@ public class SearchAction private int currentPage = 0; private int totalPages; + + private boolean searchResultsOnly; + + private String completeQueryString; + + private static final String COMPLETE_QUERY_STRING_SEPARATOR = ";"; public String quickSearch() throws MalformedURLException, RepositoryIndexException, RepositoryIndexSearchException @@ -103,7 +110,15 @@ public class SearchAction return GlobalResults.ACCESS_TO_NO_REPOS; } - results = crossRepoSearch.searchForTerm( getPrincipal(), selectedRepos, q, limits ); + if( searchResultsOnly && !completeQueryString.equals( "" ) ) + { + results = crossRepoSearch.searchForTerm( getPrincipal(), selectedRepos, q, limits, parseCompleteQueryString() ); + } + else + { + completeQueryString = ""; + results = crossRepoSearch.searchForTerm( getPrincipal(), selectedRepos, q, limits ); + } if ( results.isEmpty() ) { @@ -125,7 +140,12 @@ public class SearchAction * to result in a higher score. * - Joakim */ - + + if( !isEqualToPreviousSearchTerm( q ) ) + { + buildCompleteQueryString( q ); + } + return SUCCESS; } @@ -191,6 +211,46 @@ public class SearchAction return Collections.emptyList(); } + private void buildCompleteQueryString( String searchTerm ) + { + if( searchTerm.indexOf( COMPLETE_QUERY_STRING_SEPARATOR ) != -1 ) + { + searchTerm = StringUtils.remove( searchTerm, COMPLETE_QUERY_STRING_SEPARATOR ); + } + + if( completeQueryString == null || "".equals( completeQueryString ) ) + { + completeQueryString = searchTerm; + } + else + { + completeQueryString = completeQueryString + COMPLETE_QUERY_STRING_SEPARATOR + searchTerm; + } + } + + private List parseCompleteQueryString() + { + List parsedCompleteQueryString = new ArrayList(); + String[] parsed = StringUtils.split( completeQueryString, COMPLETE_QUERY_STRING_SEPARATOR ); + CollectionUtils.addAll( parsedCompleteQueryString, parsed ); + + return parsedCompleteQueryString; + } + + private boolean isEqualToPreviousSearchTerm( String searchTerm ) + { + if( !"".equals( completeQueryString ) ) + { + String[] parsed = StringUtils.split( completeQueryString, COMPLETE_QUERY_STRING_SEPARATOR ); + if( StringUtils.equalsIgnoreCase( searchTerm, parsed[ parsed.length - 1 ] ) ) + { + return true; + } + } + + return false; + } + public String getQ() { return q; @@ -230,4 +290,24 @@ public class SearchAction { this.totalPages = totalPages; } + + public boolean isSearchResultsOnly() + { + return searchResultsOnly; + } + + public void setSearchResultsOnly( boolean searchResultsOnly ) + { + this.searchResultsOnly = searchResultsOnly; + } + + public String getCompleteQueryString() + { + return completeQueryString; + } + + public void setCompleteQueryString( String completeQueryString ) + { + this.completeQueryString = completeQueryString; + } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/quickSearchForm.jspf b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/quickSearchForm.jspf index 7db37265b..71ef30ae4 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/quickSearchForm.jspf +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/quickSearchForm.jspf @@ -22,6 +22,8 @@