archiva-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jdu...@apache.org
Subject svn commit: r705848 [1/3] - in /archiva/branches/archiva-struts2: ./ archiva-docs/ archiva-docs/src/site/ archiva-docs/src/site/apt/ archiva-jetty/ archiva-modules/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/utils/ archiva...
Date Sat, 18 Oct 2008 06:45:05 GMT
Author: jdumay
Date: Fri Oct 17 23:45:02 2008
New Revision: 705848

URL: http://svn.apache.org/viewvc?rev=705848&view=rev
Log:
Merging from trunk

Added:
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumerTest.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumerTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumerTest.xml
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumerTest.xml
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-api/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-api/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-api/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-api/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-ejb/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-ejb/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-ejb/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-ejb/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-pom/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-pom/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-pom/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-pom/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-common/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-common/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-common/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-common/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-ejb/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-ejb/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-ejb/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-ejb/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-pom/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-pom/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-pom/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-pom/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project/2.4.4/test-project-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/test-repo/test-project/test-project/2.4.4/test-project-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/test-project-model-effective.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/test-project-model-effective.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-api/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-api/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-ejb/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-ejb/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-pom/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-pom/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-common/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-common/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project/2.4.4/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project/2.4.4/
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project/2.4.4/test-project-2.4.4.pom
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/test-project/test-project/2.4.4/test-project-2.4.4.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/ArchivaReportException.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/ArchivaReportException.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/RepositoryStatistics.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/RepositoryStatistics.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/RepositoryStatisticsReportGenerator.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/RepositoryStatisticsReportGenerator.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/SimpleRepositoryStatisticsReportGenerator.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-reporting/archiva-report-manager/src/main/java/org/apache/maven/archiva/reporting/SimpleRepositoryStatisticsReportGenerator.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-reporting/archiva-report-manager/src/test/java/org/apache/maven/archiva/reporting/SimpleRepositoryStatisticsReportGeneratorTest.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-reporting/archiva-report-manager/src/test/java/org/apache/maven/archiva/reporting/SimpleRepositoryStatisticsReportGeneratorTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/test/java/org/apache/maven/archiva/security/AbstractSecurityTest.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-web/archiva-security/src/test/java/org/apache/maven/archiva/security/AbstractSecurityTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/test/java/org/apache/maven/archiva/security/ArchivaServletAuthenticatorTest.java
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-web/archiva-security/src/test/java/org/apache/maven/archiva/security/ArchivaServletAuthenticatorTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/test/resources/org/apache/maven/archiva/security/ArchivaServletAuthenticatorTest.xml
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-web/archiva-security/src/test/resources/org/apache/maven/archiva/security/ArchivaServletAuthenticatorTest.xml
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/reports/statisticsReport.jsp
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/reports/statisticsReport.jsp
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/test/resources/WEB-INF/repository-servlet-security-test/
      - copied from r705847, archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/test/resources/WEB-INF/repository-servlet-security-test/
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/test/resources/WEB-INF/repository-servlet-security-test/web.xml
      - copied unchanged from r705847, archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/test/resources/WEB-INF/repository-servlet-security-test/web.xml
Removed:
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/resources/org/apache/maven/archiva/web/action/reports/GenerateReportAction-validation.xml
Modified:
    archiva/branches/archiva-struts2/   (props changed)
    archiva/branches/archiva-struts2/archiva-docs/pom.xml
    archiva/branches/archiva-struts2/archiva-docs/src/site/apt/release-notes.apt
    archiva/branches/archiva-struts2/archiva-docs/src/site/site.xml
    archiva/branches/archiva-struts2/archiva-jetty/   (props changed)
    archiva/branches/archiva-struts2/archiva-jetty/pom.xml
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/utils/VersionUtil.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumer.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-model/src/main/mdo/archiva-base.xml
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/ProjectModelMerge.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilter.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionFilter.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel300Reader.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/archiva-model-effective.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/DefaultPathParserTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/AbstractDeclarativeConstraint.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraint.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraint.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/UniqueArtifactIdConstraint.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/project/ProjectModelToDatabaseListener.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraintTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraintTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/UniqueArtifactIdConstraintTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/UniqueGroupIdConstraintTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml
    archiva/branches/archiva-struts2/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutor.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-rss/src/main/java/org/apache/archiva/rss/processor/NewArtifactsRssFeedProcessor.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/main/java/org/apache/maven/archiva/security/ArchivaServletAuthenticator.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/main/java/org/apache/maven/archiva/security/ArchivaXworkUser.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/main/java/org/apache/maven/archiva/security/ServletAuthenticator.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-security/src/test/java/org/apache/maven/archiva/security/DefaultUserRepositoriesTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/reports/GenerateReportAction.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/admin/repositoryGroups.jsp
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/decorators/default.jsp
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/reports/pickReport.jsp
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/css/maven-theme.css
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/images/archiva-splat-32.gif
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavSessionProvider.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/ArchivaDavSessionProviderTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletSecurityTest.java
    archiva/branches/archiva-struts2/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletSecurityTest.xml
    archiva/branches/archiva-struts2/pom.xml

Propchange: archiva/branches/archiva-struts2/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 17 23:45:02 2008
@@ -1 +1,2 @@
 /archiva/branches/MRM-541:686983-687034
+/archiva/trunk:699795-705847

Modified: archiva/branches/archiva-struts2/archiva-docs/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-docs/pom.xml?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-docs/pom.xml (original)
+++ archiva/branches/archiva-struts2/archiva-docs/pom.xml Fri Oct 17 23:45:02 2008
@@ -106,9 +106,42 @@
               </execution>
             </executions>
           </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-enforcer-plugin</artifactId>
+            <executions>
+              <execution>
+                <id>enforce-beanshell</id>
+                <goals>
+                  <goal>enforce</goal>
+                </goals>
+                <configuration>
+                  <rules>
+                    <evaluateBeanshell>
+                      <message>Site descriptor needs to be updated for the current release version</message>
+                      <condition>
+                        <![CDATA[
+                          javax.xml.xpath.XPath xpath = javax.xml.xpath.XPathFactory.newInstance().newXPath();
+                          org.xml.sax.InputSource is = new org.xml.sax.InputSource( new java.io.FileInputStream( "${basedir}/src/site/site.xml" ) );
+                          xpath.evaluate( "//project/body/breadcrumbs/item[@name='${project.version}']/@href", is ).equals( "/docs/${project.version}" )
+                        ]]>
+                      </condition>
+                    </evaluateBeanshell>
+                    <evaluateBeanshell>
+                      <message>Release notes need to be updated for the current release version</message>
+                      <condition>
+                        <![CDATA[
+                          org.codehaus.plexus.util.FileUtils.fileRead( "${basedir}/src/site/apt/release-notes.apt" ).indexOf( "Release Notes for Archiva ${project.version}" ) >= 0
+                        ]]>
+                      </condition>
+                    </evaluateBeanshell>
+                  </rules>
+                </configuration>
+              </execution>
+            </executions>
+          </plugin>
         </plugins>
       </build>
     </profile>
   </profiles>
-
 </project>

Modified: archiva/branches/archiva-struts2/archiva-docs/src/site/apt/release-notes.apt
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-docs/src/site/apt/release-notes.apt?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-docs/src/site/apt/release-notes.apt (original)
+++ archiva/branches/archiva-struts2/archiva-docs/src/site/apt/release-notes.apt Fri Oct 17 23:45:02 2008
@@ -1,12 +1,11 @@
  -----
- Release Notes for Archiva 1.1.1
+ Release Notes for Archiva 1.2-SNAPSHOT
  -----
 
-Release Notes for Archiva 1.1.1
+Release Notes for Archiva 1.2-SNAPSHOT
 
-  The Apache Archiva team would like to announce the release of Archiva 1.1.1.
-
-  Archiva 1.1.1 is {{{http://archiva.apache.org/download.html} available for download from the web site}}.
+  The Apache Archiva team would like to announce the release of Archiva 1.2.  Archiva is {{{http://archiva.apache.org/download.html} 
+  available for download from the web site}}.
 
   Archiva is an application for managing one or more remote repositories, including administration, artifact handling, browsing and searching.
 
@@ -16,46 +15,77 @@
 
     * the archiva-user mailing list: {{http://archiva.apache.org/mail-lists.html}}
 
-* New in Archiva 1.1
+* New in Archiva 1.2
 
-** Artifact Uploads
+~~TODO
 
-   To simplify adding artifacts to a repository, an upload form has been put in place that allows you to put an artifact and POM into
-   the repository without the need for the Maven <<<deploy-file>>> command.
+* Release Notes
 
-** RSS
+  The Archiva 1.2 feature set can be seen in the {{{tour/index.html} feature tour}}.
 
-   RSS is now available for getting a feed of new artifacts being added to a given repository. Two types of feeds are generated by Archiva:
-   new artifacts in a repository and new versions of a specific artifact. Details are available in {{{userguide/rss.html}Rss Feeds}}.
+* Changes in Archiva 1.2
 
-** Virtual Repositories
+~~TODO
 
-   Virtual repositories or repository groups allows downloading from a group of repositories via one url. For more details of this feature,
-   see {{{userguide/virtual-repositories.html}Virtual Repositories}}.
+* Changes in Archiva 1.1.3
 
-** Timeouts
+** Bug
 
-   Connections to remote repositories can now have a configurable timeout value
+    * [MRM-967] - Security Issue: If repository observer role is enabled for the 'guest' user, an invalid user is able to deploy to that repository
 
-** New Runtime Bundle
+    * [MRM-397] - background of the Archiva logo is not transparent in repositories page
 
-   The application is now distributed using Jetty 6.1 and it's documented configuration, rather than the previous
-   Plexus application server bundle. It continues to use the Java Service Wrapper (v3.2.3) for application monitoring,
-   though the configuration has been improved, particularly with regard to separating the application configuration from the installation.
+    * [MRM-580] - does not give error message when one defines an illegal directory for a managed repository
 
-** Using Spring
+    * [MRM-954] - Footer doesn't stretch across repositoryGroups page
 
-   Archiva now uses the Spring Framework as it's underlying container instead of Plexus. This results in a boost in performance and
-   stability for the web application in particular.
+* Changes in Archiva 1.1.2
 
-** Using Apache Jackrabbit WebDAV Servlet
+** Bug
 
-   Archiva now uses Apache Jackrabbit's WebDAV servlet for serving repository content instead of plexus-webdav. The change results in reduced
-   codebase complexity, increased standards compliance, better webdav client support and a small peformance boost.
+    * [MRM-765] - should not be possible to create a proxy connector if there are no remote repositories
 
-* Release Notes
+    * [MRM-807] - Deployed dll won't be indexed
+
+    * [MRM-834] - Wrong repository url when archiva is used behind Apache with mof_proxy
+
+    * [MRM-841] - Introducing a new scannable artifact file type requires restart in order for some consumers to work
+
+    * [MRM-880] - Archiva does not start up on Solaris 64-Bit
+
+    * [MRM-881] - Failing to startup due to invalid bean definition
+
+    * [MRM-893] - Illegal browse operation allow
+
+    * [MRM-902] - If path has leading slash when being checked againts whitelists and blacklists causes matching failure
+
+    * [MRM-903] - Repository scanning should not stop when encounters error
+
+    * [MRM-905] - EL Expression failed with empty/not functions
+
+    * [MRM-911] - Archiva checks user's credentials before guest's rights on the repository
+
+    * [MRM-912] - rss urls seem to use fixed webcontext "archiva" instead of actual webcontext
+
+    * [MRM-915] - NPE with rss links
+
+    * [MRM-926] - NPE with search page
+
+    * [MRM-932] - Error 500 when clicking the Next or Previous icon of the results of a search, if user is trying to search for java classes, packages or methods.
+
+    * [MRM-934] - For bytecode search, only 1 version of the artifact is returned even if there are more than 1 version of that artifact which matched the search
+
+    * [MRM-943] - results search option should only be available on results page
+
+** Improvement
+
+    * [MRM-839] - change RSS URLs
+
+    * [MRM-848] - Pre-configured repositories initially appear to be empty
+
+    * [MRM-874] - POM snippet for plugins should be <plugin> not <dependency>
 
-  The Archiva 1.1 feature set can be seen in the {{{tour/index.html} feature tour}}.
+  The full list of changes can be found {{{http://jira.codehaus.org/secure/ReleaseNote.jspa?version=14491&styleName=Text&projectId=10980} in JIRA}}.
 
 * Changes in Archiva 1.1.1
 

Modified: archiva/branches/archiva-struts2/archiva-docs/src/site/site.xml
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-docs/src/site/site.xml?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-docs/src/site/site.xml (original)
+++ archiva/branches/archiva-struts2/archiva-docs/src/site/site.xml Fri Oct 17 23:45:02 2008
@@ -21,7 +21,7 @@
 <project>
   <body>
     <breadcrumbs>
-      <item name="1.1.1" href="/docs/1.1.1" />
+      <item name="1.2-SNAPSHOT" href="/docs/1.2-SNAPSHOT" />
     </breadcrumbs>
 
     <menu name="Introduction">

Propchange: archiva/branches/archiva-struts2/archiva-jetty/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Fri Oct 17 23:45:02 2008
@@ -1,5 +1,8 @@
 target
 *.iml
+*.ipr
+*.iws
 .classpath
 .project
 .settings
+

Modified: archiva/branches/archiva-struts2/archiva-jetty/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-jetty/pom.xml?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-jetty/pom.xml (original)
+++ archiva/branches/archiva-struts2/archiva-jetty/pom.xml Fri Oct 17 23:45:02 2008
@@ -284,10 +284,4 @@
       </plugin>
     </plugins>
   </build>
-  <pluginRepositories>
-    <pluginRepository>
-      <id>codehaus.snapshots</id>
-      <url>http://snapshots.repository.codehaus.org/</url>
-    </pluginRepository>
-  </pluginRepositories>
 </project>

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/utils/VersionUtil.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/utils/VersionUtil.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/utils/VersionUtil.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/utils/VersionUtil.java Fri Oct 17 23:45:02 2008
@@ -137,7 +137,7 @@
         }
         else
         {
-            return version.endsWith( SNAPSHOT );
+            return isGenericSnapshot(version);
         }
     }
 

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumer.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumer.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumer.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ProjectModelToDatabaseConsumer.java Fri Oct 17 23:45:02 2008
@@ -32,6 +32,7 @@
 import org.apache.maven.archiva.database.ArchivaDatabaseException;
 import org.apache.maven.archiva.database.ObjectNotFoundException;
 import org.apache.maven.archiva.model.ArchivaArtifact;
+import org.apache.maven.archiva.model.ArchivaModelCloner;
 import org.apache.maven.archiva.model.ArchivaProjectModel;
 import org.apache.maven.archiva.model.Keys;
 import org.apache.maven.archiva.model.RepositoryProblem;
@@ -41,7 +42,6 @@
 import org.apache.maven.archiva.repository.RepositoryException;
 import org.apache.maven.archiva.repository.content.ManagedLegacyRepositoryContent;
 import org.apache.maven.archiva.repository.project.ProjectModelException;
-import org.apache.maven.archiva.repository.project.ProjectModelFilter;
 import org.apache.maven.archiva.repository.project.ProjectModelReader;
 import org.apache.maven.archiva.repository.project.filters.EffectiveProjectModelFilter;
 import org.apache.maven.archiva.repository.project.readers.ProjectModel300Reader;
@@ -86,11 +86,6 @@
     private RepositoryContentFactory repositoryFactory;
 
     /**
-     * @plexus.requirement role-hint="expression"
-     */
-    private ProjectModelFilter expressionModelFilter;
-
-    /**
      * @plexus.requirement role="org.apache.maven.archiva.repository.project.ProjectModelFilter"
      * role-hint="effective"
      */
@@ -160,23 +155,22 @@
         {
             model = reader.read( artifactFile );
 
-            model.setOrigin( "filesystem" );
-
             // The version should be updated to the artifact/filename version if it is a unique snapshot
             if ( VersionUtil.isUniqueSnapshot( artifact.getVersion() ) )
             {
                 model.setVersion( artifact.getVersion() );
             }
 
-            // Filter the model
-            model = expressionModelFilter.filter( model );
-
-            // Resolve the project model
+            // Resolve the project model (build effective model, resolve expressions)
             model = effectiveModelFilter.filter( model );
 
             if ( isValidModel( model, repo, artifact ) )
             {
                 log.debug( "Adding project model to database - " + Keys.toKey( model ) );
+                
+                // Clone model, since DAO while detachingCopy resets its contents
+                // This changes contents of the cache in EffectiveProjectModelFilter
+                model = ArchivaModelCloner.clone( model );
                 dao.getProjectModelDAO().saveProjectModel( model );
             }
             else
@@ -356,5 +350,4 @@
             }
         }
     }
-    
 }

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-model/src/main/mdo/archiva-base.xml
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-model/src/main/mdo/archiva-base.xml?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-model/src/main/mdo/archiva-base.xml (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-model/src/main/mdo/archiva-base.xml Fri Oct 17 23:45:02 2008
@@ -893,7 +893,7 @@
         StringBuffer key = new StringBuffer();
 
         key.append( defaultString( reference.getGroupId() ) ).append( ":" );
-        key.append( defaultString( reference.getArtifactId() ) ).append( ":" );
+        key.append( defaultString( reference.getArtifactId() ) );
 
         return key.toString();
     }
@@ -969,7 +969,7 @@
 
         key.append( defaultString( reference.getGroupId() ) ).append( ":" );
         key.append( defaultString( reference.getArtifactId() ) ).append( ":" );
-        key.append( defaultString( reference.getVersion() ) ).append( ":" );
+        key.append( defaultString( reference.getVersion() ) );
 
         return key.toString();
     }
@@ -2346,6 +2346,46 @@
             The number of new files discovered.
           </description>
         </field>
+        <field>
+          <name>totalProjectCount</name>
+          <version>1.0.0+</version>
+          <identifier>false</identifier>
+          <required>true</required>
+          <type>long</type>
+          <description>
+            The total number of unique projects in the repository.
+          </description>
+        </field>
+        <field>
+          <name>totalGroupCount</name>
+          <version>1.0.0+</version>
+          <identifier>false</identifier>
+          <required>true</required>
+          <type>long</type>
+          <description>
+            The total number of unique groups in the repository.
+          </description>
+        </field>
+        <field>
+          <name>totalArtifactCount</name>
+          <version>1.0.0+</version>
+          <identifier>false</identifier>
+          <required>true</required>
+          <type>long</type>
+          <description>
+            The total number of artifacts in the repository. 
+          </description>
+        </field>
+        <field>
+          <name>totalSize</name>
+          <version>1.0.0+</version>
+          <identifier>false</identifier>
+          <required>true</required>
+          <type>long</type>
+          <description>
+            The total size in bytes of the repository.
+          </description>
+        </field>
       </fields>
       <codeSegments>
         <codeSegment>

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/FilenameParser.java Fri Oct 17 23:45:02 2008
@@ -104,7 +104,8 @@
 
             // check it starts with the same version up to the snapshot part
             int leadingLength = expected.length() - 9;
-            if ( version.startsWith( expected.substring( 0, leadingLength ) ) && version.length() > leadingLength )
+            if ( leadingLength > 0 && version.startsWith( expected.substring( 0, leadingLength ) ) &&
+                version.length() > leadingLength )
             {
                 // If we expect a non-generic snapshot - look for the timestamp
                 Matcher m = SNAPSHOT_PATTERN.matcher( version.substring( leadingLength + 1 ) );

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/ProjectModelMerge.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/ProjectModelMerge.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/ProjectModelMerge.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/ProjectModelMerge.java Fri Oct 17 23:45:02 2008
@@ -77,6 +77,7 @@
         ArchivaProjectModel merged = new ArchivaProjectModel();
 
         // Unmerged.
+        merged.setParentProject(mainProject.getParentProject());
         merged.setArtifactId( mainProject.getArtifactId() );
         merged.setPackaging( StringUtils.defaultIfEmpty( mainProject.getPackaging(), "jar" ) );
         merged.setRelocation( mainProject.getRelocation() );
@@ -334,6 +335,7 @@
         }
 
         Properties merged = new Properties();
+        merged.putAll(mainProperties);
 
         Enumeration keys = parentProperties.propertyNames();
         while ( keys.hasMoreElements() )

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilter.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilter.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilter.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilter.java Fri Oct 17 23:45:02 2008
@@ -100,20 +100,23 @@
         // Clone submitted project (so that we don't mess with it) 
         effectiveProject = ArchivaModelCloner.clone( project );
 
-        // Setup Expression Evaluation pieces.
-        effectiveProject = expressionFilter.filter( effectiveProject );
-
         DEBUG( "Starting build of effective with: " + effectiveProject );
 
         // Merge in all the parent poms.
         effectiveProject = mergeParent( effectiveProject );
 
+        // Setup Expression Evaluation pieces.
+        effectiveProject = expressionFilter.filter( effectiveProject );
+
         // Resolve dependency versions from dependency management.
         applyDependencyManagement( effectiveProject );
 
+        // groupId or version could be updated by parent or expressions
+        projectKey = toProjectKey( effectiveProject );
+        
         // Do not add project into cache if it contains no groupId and
         // version information
-        if ( project.getGroupId() != null && project.getVersion() != null )
+        if ( effectiveProject.getGroupId() != null && effectiveProject.getVersion() != null )
         {
             synchronized ( effectiveProjectCache )
             {
@@ -191,8 +194,8 @@
             if ( parentProject != null )
             {
                 // Merge the pom with the parent pom.
-                parentProject = expressionFilter.filter( parentProject );
                 parentProject = mergeParent( parentProject );
+                parentProject = expressionFilter.filter( parentProject );
 
                 // Cache the pre-merged parent.
                 synchronized ( effectiveProjectCache )

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionFilter.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionFilter.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionFilter.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionFilter.java Fri Oct 17 23:45:02 2008
@@ -104,11 +104,24 @@
             try
             {
                 // Setup some common properties.
+                VersionedReference parent = model.getParentProject();
+                if ( parent != null )
+                {
+                    String parentGroupId = StringUtils.defaultString( evaluator.expand( parent.getGroupId() ) );
+                    String parentArtifactId = StringUtils.defaultString( evaluator.expand( parent.getArtifactId() ) );
+                    String parentVersion = StringUtils.defaultString( evaluator.expand( parent.getVersion() ) );
+
+                    props.setProperty( "parent.groupId", parentGroupId );
+                    props.setProperty( "parent.artifactId", parentArtifactId );
+                    props.setProperty( "parent.version", parentVersion );
+                }
+
                 String groupId = StringUtils.defaultString( evaluator.expand( model.getGroupId() ) );
                 String artifactId = StringUtils.defaultString( evaluator.expand( model.getArtifactId() ) );
                 String version = StringUtils.defaultString( evaluator.expand( model.getVersion() ) );
                 String name = StringUtils.defaultString( evaluator.expand( model.getName() ) );
                 
+
                 /* Archiva doesn't need to handle a full expression language with object tree walking
                  * as the requirements within Archiva are much smaller, a quick replacement of the
                  * important fields (groupId, artifactId, version, name) are handled specifically. 

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel300Reader.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel300Reader.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel300Reader.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel300Reader.java Fri Oct 17 23:45:02 2008
@@ -94,6 +94,8 @@
             model.setProperties( getProperties( xml.getElement( "//project/properties" ) ) );
             model.setDependencies( getDependencies( xml ) );
             
+            model.setOrigin("filesystem");
+
             /* Following are not valid for <pomVersion>3</pomVersion> / Maven 1 pom files.
              * 
              * model.setDependencyManagement()

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java Fri Oct 17 23:45:02 2008
@@ -104,6 +104,8 @@
             model.setBuildExtensions( getBuildExtensions( xml ) );
 
             model.setRelocation( getRelocation( xml ) );
+            
+            model.setOrigin("filesystem");
 
             return model;
         }

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/archiva-model-effective.pom
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/archiva-model-effective.pom?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/archiva-model-effective.pom (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/expected-poms/archiva-model-effective.pom Fri Oct 17 23:45:02 2008
@@ -431,6 +431,16 @@
       <version>1.0-SNAPSHOT</version>
     </dependency>
     <dependency>
+      <groupId>org.apache.maven.archiva</groupId>
+      <artifactId>archiva-test-A</artifactId>
+      <version>1.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.archiva</groupId>
+      <artifactId>archiva-test-B</artifactId>
+      <version>1.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-utils</artifactId>
       <version>1.4</version>

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/DefaultPathParserTest.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/DefaultPathParserTest.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/DefaultPathParserTest.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/DefaultPathParserTest.java Fri Oct 17 23:45:02 2008
@@ -296,6 +296,15 @@
     }
 
     /**
+     * A timestamped versioned artifact but without release version part. Like on axiom trunk. 
+     */
+    public void testBadSnapshotWithoutReleasePart()
+    {
+        assertBadPath( "org/apache/ws/commons/axiom/axiom/SNAPSHOT/axiom-20070912.093446-2.pom", 
+             "snapshot version without release part");
+    }
+
+    /**
      * A timestamped versioned artifact, should reside in a SNAPSHOT baseversion directory.
      * @throws LayoutException
      */

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/content/FilenameParserTest.java Fri Oct 17 23:45:02 2008
@@ -169,6 +169,15 @@
         assertNull( parser.expect( "2.0-SNAPSHOT" ) );
     }
 
+    public void testExpectWrongSnapshot2()
+    {
+        // tests parsing axiom snapshots without exceptions
+        FilenameParser parser = new FilenameParser( "axiom-20080221.062205-9.pom" );
+
+        assertEquals( "axiom", parser.nextNonVersion() );
+        assertNull( parser.expect( "SNAPSHOT" ) );
+    }
+
     public void testClassifier()
     {
         FilenameParser parser = new FilenameParser( "artifact-id-1.0-20070219.171202-34-test-sources.jar" );

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java Fri Oct 17 23:45:02 2008
@@ -81,20 +81,29 @@
     public void testBuildEffectiveProject()
         throws Exception
     {
+        assertEffectiveProject(
+                "/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom",
+        "/archiva-model-effective.pom");
+        assertEffectiveProject(
+                "/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom",
+        "/test-project-model-effective.pom");
+    }
+
+    private void assertEffectiveProject(String pomFile, String effectivePomFile) throws Exception,
+            ProjectModelException {
         initTestResolverFactory();
         EffectiveProjectModelFilter filter = lookupEffective();
 
-        ArchivaProjectModel startModel = createArchivaProjectModel( DEFAULT_REPOSITORY
-            + "/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom" );
+        ArchivaProjectModel startModel = createArchivaProjectModel( DEFAULT_REPOSITORY + pomFile );
 
         ArchivaProjectModel effectiveModel = filter.filter( startModel );
 
-        ArchivaProjectModel expectedModel = createArchivaProjectModel( "src/test/expected-poms/"
-            + "/archiva-model-effective.pom" );
+        ArchivaProjectModel expectedModel = createArchivaProjectModel( "src/test/expected-poms/" + effectivePomFile);
 
         assertModel( expectedModel, effectiveModel );
     }
 
+
     /**
      * [MRM-510] In Repository Browse, the first unique snapshot version clicked is getting persisted in the 
      * request resulting to 'version does not match' error
@@ -272,7 +281,7 @@
         while ( it.hasNext() )
         {
             Dependency dep = it.next();
-            String key = Dependency.toVersionlessKey( dep );
+            String key = Dependency.toKey( dep );
             map.put( key, dep );
         }
         return map;

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java Fri Oct 17 23:45:02 2008
@@ -92,6 +92,6 @@
         assertEquals( "Parent Version", "1.0-SNAPSHOT", parentRef.getVersion() );
         
         assertNotNull( "Dependencies", project.getDependencies() );
-        assertEquals( "Dependencies.size", 6, project.getDependencies().size() );
+        assertEquals( "Dependencies.size", 8, project.getDependencies().size() );
     }
 }

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom Fri Oct 17 23:45:02 2008
@@ -34,6 +34,16 @@
       <artifactId>archiva-common</artifactId>
     </dependency>
     <dependency>
+      <groupId>org.apache.maven.archiva</groupId>
+      <artifactId>archiva-test-A</artifactId>
+      <version>${pom.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.archiva</groupId>
+      <artifactId>archiva-test-B</artifactId>
+      <version>${parent.version}</version>
+    </dependency>
+    <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-utils</artifactId>
     </dependency>

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/AbstractDeclarativeConstraint.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/AbstractDeclarativeConstraint.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/AbstractDeclarativeConstraint.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/AbstractDeclarativeConstraint.java Fri Oct 17 23:45:02 2008
@@ -40,6 +40,8 @@
     protected Object[] params;
 
     protected int[] range;
+    
+    protected String sortDirection = Constraint.ASCENDING;
 
     public String getFilter()
     {
@@ -68,7 +70,7 @@
 
     public String getSortDirection()
     {
-        return Constraint.ASCENDING;
+        return sortDirection;
     }
     
     public String[] getVariables()

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraint.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraint.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraint.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraint.java Fri Oct 17 23:45:02 2008
@@ -44,14 +44,26 @@
         params = new Object[] { repoId };
 	}
 		
-	public ArtifactsByRepositoryConstraint( String repoId, Date targetWhenGathered, String sortColumn )
+	public ArtifactsByRepositoryConstraint( String repoId, Date targetWhenGathered, String sortColumn, boolean isBefore )
     {
+	    String condition = isBefore ? "<=" : ">=";
+	    
 	    declImports = new String[] { "import java.util.Date" };
-	    whereClause = "this.repositoryId == repoId && this.whenGathered >= targetWhenGathered";        
+	    whereClause = "this.repositoryId == repoId && this.whenGathered " + condition + " targetWhenGathered";        
         declParams = new String[] { "String repoId", "Date targetWhenGathered" };
         params = new Object[] { repoId, targetWhenGathered };        
         this.sortColumn = sortColumn;
     }
+	
+	public ArtifactsByRepositoryConstraint( String repoId, String type, Date before, String sortColumn )
+	{
+	    declImports = new String[] { "import java.util.Date" };
+        whereClause =
+            "this.repositoryId == repoId && this.type == type && this.whenGathered <= before";        
+        declParams = new String[] { "String repoId", "String type", "Date before" };
+        params = new Object[] { repoId, type, before };        
+        this.sortColumn = sortColumn;
+	}
 		
 	public String getSortColumn() 
 	{		

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraint.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraint.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraint.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraint.java Fri Oct 17 23:45:02 2008
@@ -1,5 +1,9 @@
 package org.apache.maven.archiva.database.constraints;
 
+import java.util.Date;
+
+import org.apache.maven.archiva.database.Constraint;
+
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -36,6 +40,16 @@
         declParams = new String[] { "String repoId" };
         params = new Object[] { repoId };
     }
+    
+    public RepositoryContentStatisticsByRepositoryConstraint( String repoId, Date startDate, Date endDate )
+    {    
+        declImports = new String[] { "import java.util.Date" };
+        whereClause = "repositoryId == repoId && whenGathered >= startDate && whenGathered <= endDate";
+        declParams = new String[] { "String repoId", "Date startDate", "Date endDate" };
+        params = new Object[] { repoId, startDate, endDate };
+        
+        sortDirection = Constraint.DESCENDING;
+    }
 
     public String getSortColumn()
     {

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/UniqueArtifactIdConstraint.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/UniqueArtifactIdConstraint.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/UniqueArtifactIdConstraint.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/constraints/UniqueArtifactIdConstraint.java Fri Oct 17 23:45:02 2008
@@ -35,7 +35,9 @@
     implements Constraint
 {
     private StringBuffer sql = new StringBuffer();
-
+    
+    private Class resultClass;
+    
     /**
      * Obtain a set of unique ArtifactIds for the specified groupId.
      * 
@@ -43,7 +45,7 @@
      */
     public UniqueArtifactIdConstraint( List<String> selectedRepositoryIds, String groupId )
     {
-        appendSelect( sql );
+        appendSelect( sql, false );
         sql.append( " WHERE " );
         SqlBuilder.appendWhereSelectedRepositories( sql, "repositoryId", selectedRepositoryIds );
         sql.append( " && " );
@@ -60,17 +62,36 @@
      */
     public UniqueArtifactIdConstraint( String groupId )
     {
-        appendSelect( sql );
+        appendSelect( sql, false );
         sql.append( " WHERE " );
         appendWhereSelectedGroupId( sql );
         appendGroupBy( sql );
 
         super.params = new Object[] { groupId };
     }
+    
+    /**
+     * Obtain a set of unique artifactIds with respect to their groups from the specified repository.
+     * 
+     * @param repoId
+     * @param isUnique
+     */
+    public UniqueArtifactIdConstraint( String repoId, boolean isUnique )
+    {
+        appendSelect( sql, isUnique );
+        sql.append( " WHERE repositoryId == \"" + repoId + "\"" );
+        
+        resultClass = Object[].class;
+    }
 
     @SuppressWarnings("unchecked")
     public Class getResultClass()
     {
+        if( resultClass != null )
+        {
+            return resultClass;
+        }
+        
         return String.class;
     }
 
@@ -84,9 +105,16 @@
         buf.append( " GROUP BY artifactId ORDER BY artifactId ASCENDING" );
     }
 
-    private void appendSelect( StringBuffer buf )
+    private void appendSelect( StringBuffer buf, boolean isUnique )
     {
-        buf.append( "SELECT artifactId FROM " ).append( ArchivaArtifactModel.class.getName() );
+        if( isUnique )
+        {
+            buf.append( "SELECT DISTINCT groupId, artifactId FROM " ).append( ArchivaArtifactModel.class.getName() );
+        }
+        else
+        {
+            buf.append( "SELECT artifactId FROM " ).append( ArchivaArtifactModel.class.getName() );
+        }
     }
 
     private void appendWhereSelectedGroupId( StringBuffer buf )

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/project/ProjectModelToDatabaseListener.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/project/ProjectModelToDatabaseListener.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/project/ProjectModelToDatabaseListener.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/project/ProjectModelToDatabaseListener.java Fri Oct 17 23:45:02 2008
@@ -24,6 +24,7 @@
 import org.apache.maven.archiva.database.ArchivaDAO;
 import org.apache.maven.archiva.database.ArchivaDatabaseException;
 import org.apache.maven.archiva.database.ObjectNotFoundException;
+import org.apache.maven.archiva.model.ArchivaModelCloner;
 import org.apache.maven.archiva.model.ArchivaProjectModel;
 import org.apache.maven.archiva.model.VersionedReference;
 import org.apache.maven.archiva.repository.project.ProjectModelException;
@@ -135,7 +136,9 @@
             return;
         }
 
-        model.setOrigin( "filesystem" );
+        // Clone model, since DAO while detachingCopy resets contents of the model
+        // this changes behaviour of EffectiveProjectModelFilter
+        model = ArchivaModelCloner.clone( model );
 
         try
         {

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraintTest.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraintTest.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraintTest.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/ArtifactsByRepositoryConstraintTest.java Fri Oct 17 23:45:02 2008
@@ -37,20 +37,20 @@
 public class ArtifactsByRepositoryConstraintTest
     extends AbstractArchivaDatabaseTestCase
 {
-    private ArtifactDAO artifactDao;
+    private ArtifactDAO artifactDao; 
 
     public void setUp()
         throws Exception
     {
-        super.setUp();
+        super.setUp(); 
 
         ArchivaDAO dao = (ArchivaDAO) lookup( ArchivaDAO.ROLE, "jdo" );
         artifactDao = dao.getArtifactDAO();
     }
 
-    private ArchivaArtifact createArtifact( String groupId, String artifactId, String version )
+    private ArchivaArtifact createArtifact( String groupId, String artifactId, String version, String type )
     {
-        ArchivaArtifact artifact = artifactDao.createArtifact( groupId, artifactId, version, null, "jar" );
+        ArchivaArtifact artifact = artifactDao.createArtifact( groupId, artifactId, version, null, type );
         artifact.getModel().setLastModified( new Date() );
         artifact.getModel().setRepositoryId( "test-repo" );
 
@@ -63,19 +63,19 @@
         Date whenGathered = Calendar.getInstance().getTime();
         whenGathered.setTime( 123456789 );
 
-        ArchivaArtifact artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0" );
+        ArchivaArtifact artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.1" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.1", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-two", "1.0.2" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-two", "1.0.2", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-one", "2.0" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "2.0", "jar" );
         artifact.getModel().setRepositoryId( "different-repo" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
@@ -88,19 +88,19 @@
     {
         Date whenGathered = Calendar.getInstance().getTime();
 
-        ArchivaArtifact artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0" );
+        ArchivaArtifact artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.1" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.1", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.2" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.2", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-one", "2.0" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "2.0", "jar" );
         artifact.getModel().setRepositoryId( "different-repo" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
@@ -108,18 +108,63 @@
         Date olderWhenGathered = Calendar.getInstance().getTime();
         olderWhenGathered.setTime( 123456789 );
         
-        artifact = createArtifact( "org.apache.archiva", "artifact-two", "1.1-SNAPSHOT" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-two", "1.1-SNAPSHOT", "jar" );
         artifact.getModel().setWhenGathered( olderWhenGathered );
         artifactDao.saveArtifact( artifact );
 
-        artifact = createArtifact( "org.apache.archiva", "artifact-three", "2.0-beta-1" );
+        artifact = createArtifact( "org.apache.archiva", "artifact-three", "2.0-beta-1", "jar" );
         artifact.getModel().setWhenGathered( whenGathered );
         artifactDao.saveArtifact( artifact );
 
         assertConstraint( "Artifacts By Repository and When Gathered", 4,
-                          new ArtifactsByRepositoryConstraint( "test-repo", whenGathered, "repositoryId" ) );
+                          new ArtifactsByRepositoryConstraint( "test-repo", whenGathered, "repositoryId", false ) );
     }
+    
+    public void testQueryArtifactsInRepoByType()
+        throws Exception
+    {
+        Calendar cal = Calendar.getInstance();
+        cal.set( 2008, 9, 1 );
+        Date whenGathered = cal.getTime();
+
+        ArchivaArtifact artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0", "jar" );
+        artifact.getModel().setWhenGathered( whenGathered );
+        artifactDao.saveArtifact( artifact );
+
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.1", "jar" );
+        artifact.getModel().setWhenGathered( whenGathered );
+        artifactDao.saveArtifact( artifact );
+
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "1.0.2", "jar" );
+        artifact.getModel().setWhenGathered( whenGathered );
+        artifactDao.saveArtifact( artifact );
+        
+        artifact = createArtifact( "org.apache.archiva", "artifact-two", "1.1-SNAPSHOT", "war" );
+        artifact.getModel().setWhenGathered( whenGathered );
+        artifactDao.saveArtifact( artifact );
+
+        artifact = createArtifact( "org.apache.archiva", "artifact-three", "2.0-beta-1", "war" );
+        artifact.getModel().setWhenGathered( whenGathered );
+        artifactDao.saveArtifact( artifact );
 
+        Calendar cal2 = Calendar.getInstance();
+        cal2.set( 2008, 12, 12 );
+        Date diffWhenGathered = cal2.getTime();
+        
+        artifact = createArtifact( "org.apache.archiva", "artifact-one", "2.0", "jar" );
+        artifact.getModel().setWhenGathered( diffWhenGathered );
+        artifactDao.saveArtifact( artifact );
+        
+        cal2 = Calendar.getInstance();
+        cal2.set( 2008, 10, 30 );
+        Date before = cal2.getTime();
+        
+        assertConstraint( "Artifacts of Type 'jar' By Repository and When Gathered", 3,
+                          new ArtifactsByRepositoryConstraint( "test-repo", "jar", before, "whenGathered" ) );
+        assertConstraint( "Artifacts of Type 'war' By Repository and When Gathered", 2,
+                          new ArtifactsByRepositoryConstraint( "test-repo", "war", before, "whenGathered" ) );
+    }
+    
     private void assertConstraint( String msg, int count, ArtifactsByRepositoryConstraint constraint )
         throws Exception
     {

Modified: archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraintTest.java
URL: http://svn.apache.org/viewvc/archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraintTest.java?rev=705848&r1=705847&r2=705848&view=diff
==============================================================================
--- archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraintTest.java (original)
+++ archiva/branches/archiva-struts2/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/constraints/RepositoryContentStatisticsByRepositoryConstraintTest.java Fri Oct 17 23:45:02 2008
@@ -32,7 +32,7 @@
  * @version
  */
 public class RepositoryContentStatisticsByRepositoryConstraintTest
-    extends AbstractArchivaDatabaseTestCase
+    extends AbstractArchivaDatabaseTestCase 
 {
     private RepositoryContentStatistics createStats( String repoId, String timestamp, long duration, long totalfiles,
                                                      long newfiles )
@@ -76,4 +76,27 @@
         assertEquals( "internal", ( (RepositoryContentStatistics) results.get( 2 ) ).getRepositoryId() );
         assertEquals( "internal", ( (RepositoryContentStatistics) results.get( 3 ) ).getRepositoryId() );
     }
+    
+    public void testStatsWithDateRange()
+        throws Exception
+    {
+        Constraint constraint =
+            new RepositoryContentStatisticsByRepositoryConstraint( "internal", toDate( "2007/10/18 8:00:00" ),
+                                                                   toDate( "2007/10/20 8:00:00" ) );
+        List results = dao.getRepositoryContentStatisticsDAO().queryRepositoryContentStatistics( constraint );
+        assertNotNull( "Stats: results (not null)", results );
+        assertEquals( "Stats: results.size", 3, results.size() );
+
+        assertEquals( "internal", ( (RepositoryContentStatistics) results.get( 0 ) ).getRepositoryId() );
+        assertEquals( toDate( "2007/10/20 8:00:00" ),
+                      ( (RepositoryContentStatistics) results.get( 0 ) ).getWhenGathered() );
+
+        assertEquals( "internal", ( (RepositoryContentStatistics) results.get( 1 ) ).getRepositoryId() );
+        assertEquals( toDate( "2007/10/19 8:00:00" ),
+                      ( (RepositoryContentStatistics) results.get( 1 ) ).getWhenGathered() );
+
+        assertEquals( "internal", ( (RepositoryContentStatistics) results.get( 2 ) ).getRepositoryId() );
+        assertEquals( toDate( "2007/10/18 8:00:00" ),
+                      ( (RepositoryContentStatistics) results.get( 2 ) ).getWhenGathered() );
+    }
 }



Mime
View raw message