Return-Path: Delivered-To: apmail-incubator-cayenne-commits-archive@locus.apache.org Received: (qmail 27934 invoked from network); 21 May 2006 19:29:31 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 21 May 2006 19:29:31 -0000 Received: (qmail 33970 invoked by uid 500); 21 May 2006 19:29:31 -0000 Delivered-To: apmail-incubator-cayenne-commits-archive@incubator.apache.org Received: (qmail 33950 invoked by uid 500); 21 May 2006 19:29:31 -0000 Mailing-List: contact cayenne-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cayenne-dev@incubator.apache.org Delivered-To: mailing list cayenne-commits@incubator.apache.org Received: (qmail 33941 invoked by uid 99); 21 May 2006 19:29:30 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 21 May 2006 12:29:30 -0700 X-ASF-Spam-Status: No, hits=1.4 required=10.0 tests=INFO_TLD,NO_REAL_NAME X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [140.211.166.113] (HELO eris.apache.org) (140.211.166.113) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 21 May 2006 12:29:29 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 7B2691A983A; Sun, 21 May 2006 12:29:09 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r408464 - in /incubator/cayenne/main/trunk/cayenne-regression-profiler: ./ src/main/java/org/apache/cayenne/profile/ src/main/java/org/apache/cayenne/profile/cases/ src/main/java/org/apache/cayenne/profile/servlet/ src/main/resources/ Date: Sun, 21 May 2006 19:29:07 -0000 To: cayenne-commits@incubator.apache.org From: aadamchik@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20060521192909.7B2691A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: aadamchik Date: Sun May 21 12:29:07 2006 New Revision: 408464 URL: http://svn.apache.org/viewvc?rev=408464&view=rev Log: setting mavne profiles to support regression profiling on different dbs Added: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/AbstractCase.java - copied, changed from r408130, incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/AbstractCase.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/TestDataSourceFactory.java Removed: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/AbstractCase.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/resources/regression-profile.driver.xml Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/pom.xml incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/DeleteCase.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/InsertCase.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/SelectCase.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileFilter.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileServlet.java incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/resources/cayenne.xml Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/pom.xml URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/pom.xml?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/pom.xml (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/pom.xml Sun May 21 12:29:07 2006 @@ -6,15 +6,6 @@ Cayenne Regression Profiler Web Application 1.2-SNAPSHOT http://incubator.apache.org/cayenne/ - - - - objectstyle - ObjectStyle Public Maven2 repo - http://objectstyle.org/maven2 - - - cayenne-regression-profiler @@ -41,9 +32,6 @@ - org.mortbay.jetty maven-jetty6-plugin @@ -57,37 +45,96 @@ 20 - - - 1.2-SNAPSHOT - - true - - - - org.objectstyle.cayenne - cayenne - 1.2-SNAPSHOT - - - - - 1.2M12 - - - org.objectstyle.cayenne - cayenne - 1.2M12 - - - + + + 1.2-SNAPSHOT + + true + + + + org.objectstyle.cayenne + cayenne + 1.2-SNAPSHOT + + + + + 1.2M12 + + + org.objectstyle.cayenne + cayenne + 1.2M12 + + + + + + default-db + + true + + cayenne.test.connection + internal_embedded_datasource + + + + + hsqldb + hsqldb + 1.8.0.1 + runtime + + + + + mysql + + + cayenne.test.connection + mysql + + + + + mysql + mysql-connector-java + 3.1.11 + runtime + + + + + oracle + + + cayenne.test.connection + oracle + + + + + com.oracle + oracle-driver + 10 + runtime + + + - + + + objectstyle + ObjectStyle Public Maven2 repo + http://objectstyle.org/maven2 + + javax.servlet @@ -96,16 +143,9 @@ provided - junit - junit - 3.8.1 - - - hsqldb - hsqldb - 1.8.0.1 - runtime + junit + junit + 3.8.1 - Copied: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/AbstractCase.java (from r408130, incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/AbstractCase.java) URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/AbstractCase.java?p2=incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/AbstractCase.java&p1=incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/AbstractCase.java&r1=408130&r2=408464&rev=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/AbstractCase.java (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/AbstractCase.java Sun May 21 12:29:07 2006 @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.cayenne.profile.servlet; +package org.apache.cayenne.profile; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; Added: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/TestDataSourceFactory.java URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/TestDataSourceFactory.java?rev=408464&view=auto ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/TestDataSourceFactory.java (added) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/TestDataSourceFactory.java Sun May 21 12:29:07 2006 @@ -0,0 +1,74 @@ +/* + * Copyright 2006 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.cayenne.profile; + +import javax.sql.DataSource; + +import org.apache.log4j.Level; +import org.objectstyle.cayenne.CayenneRuntimeException; +import org.objectstyle.cayenne.conf.Configuration; +import org.objectstyle.cayenne.conf.ConnectionProperties; +import org.objectstyle.cayenne.conf.DataSourceFactory; +import org.objectstyle.cayenne.conn.DataSourceInfo; +import org.objectstyle.cayenne.conn.PoolManager; + +/** + * A DataSourceFactory that loads connection info from connection properties, the same way + * unit tests do. + * + * @author Andrus Adamchik + */ +public class TestDataSourceFactory implements DataSourceFactory { + + // same as the one used in unit tests + public static final String CONNECTION_SET_PROPERTY = "cayenne.test.connection"; + + public static String getDataSourceName() { + String connectionSet = System.getProperty(CONNECTION_SET_PROPERTY); + if (connectionSet == null) { + connectionSet = ConnectionProperties.EMBEDDED_DATASOURCE; + } + + return connectionSet; + } + + public DataSource getDataSource(String location) throws Exception { + + String connectionSet = getDataSourceName(); + DataSourceInfo dsi = ConnectionProperties.getInstance().getConnectionInfo( + connectionSet); + + if (dsi == null) { + throw new CayenneRuntimeException("Connection info for key '" + + connectionSet + + "' is not configured"); + } + + return new PoolManager(dsi.getJdbcDriver(), dsi.getDataSourceUrl(), dsi + .getMinConnections(), dsi.getMaxConnections(), dsi.getUserName(), dsi + .getPassword()); + } + + /** + * @deprecated since 1.2 super is deprecated + */ + public DataSource getDataSource(String location, Level logLevel) throws Exception { + return getDataSource(location); + } + + public void initializeWithParentConfiguration(Configuration conf) { + } +} Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/DeleteCase.java URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/DeleteCase.java?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/DeleteCase.java (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/DeleteCase.java Sun May 21 12:29:07 2006 @@ -18,8 +18,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.cayenne.profile.AbstractCase; import org.apache.cayenne.profile.entity.Entity1; -import org.apache.cayenne.profile.servlet.AbstractCase; import org.objectstyle.cayenne.access.DataContext; import org.objectstyle.cayenne.query.SQLTemplate; Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/InsertCase.java URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/InsertCase.java?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/InsertCase.java (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/InsertCase.java Sun May 21 12:29:07 2006 @@ -18,8 +18,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.cayenne.profile.AbstractCase; import org.apache.cayenne.profile.entity.Entity1; -import org.apache.cayenne.profile.servlet.AbstractCase; import org.objectstyle.cayenne.access.DataContext; public class InsertCase extends AbstractCase { Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/SelectCase.java URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/SelectCase.java?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/SelectCase.java (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/cases/SelectCase.java Sun May 21 12:29:07 2006 @@ -18,8 +18,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.cayenne.profile.AbstractCase; import org.apache.cayenne.profile.entity.Entity1; -import org.apache.cayenne.profile.servlet.AbstractCase; import org.objectstyle.cayenne.access.DataContext; import org.objectstyle.cayenne.exp.Expression; import org.objectstyle.cayenne.query.SelectQuery; Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileFilter.java URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileFilter.java?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileFilter.java (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileFilter.java Sun May 21 12:29:07 2006 @@ -15,11 +15,10 @@ */ package org.apache.cayenne.profile.servlet; -import java.io.File; - import javax.servlet.FilterConfig; import javax.servlet.ServletException; +import org.apache.cayenne.profile.TestDataSourceFactory; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.objectstyle.cayenne.access.DataDomain; @@ -28,7 +27,6 @@ import org.objectstyle.cayenne.conf.Configuration; import org.objectstyle.cayenne.conf.WebApplicationContextFilter; import org.objectstyle.cayenne.util.LocalizedStringsHandler; -import org.objectstyle.cayenne.util.Util; /** * A filter that sets up DB schema. @@ -39,21 +37,6 @@ public synchronized void init(FilterConfig config) throws ServletException { - // remove old database - // store this value and log it after Cayenne logging is initialized. - boolean deletedOldDb = false; - File dbDir = new File("target/regression-db"); - if (dbDir.isDirectory()) { - - if (Util.delete(dbDir.getAbsolutePath(), true)) { - deletedOldDb = true; - } - - if (dbDir.isDirectory()) { - throw new ServletException("Can't delete the old database"); - } - } - // start Cayenne stack super.init(config); @@ -61,10 +44,12 @@ if (cayenneVersion == null) { cayenneVersion = "unknown"; } - logger.info("Started Cayenne version - '" + cayenneVersion + "'"); - if(deletedOldDb) { - logger.info("deleted old database"); - } + + logger.info("Started Cayenne... Version - '" + + cayenneVersion + + "'; connection: '" + + TestDataSourceFactory.getDataSourceName() + + "'"); // create fresh database DataDomain domain = Configuration.getSharedConfiguration().getDomain(); Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileServlet.java URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileServlet.java?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileServlet.java (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/java/org/apache/cayenne/profile/servlet/ProfileServlet.java Sun May 21 12:29:07 2006 @@ -22,6 +22,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.cayenne.profile.AbstractCase; import org.objectstyle.cayenne.access.DataContext; /** Modified: incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/resources/cayenne.xml URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/resources/cayenne.xml?rev=408464&r1=408463&r2=408464&view=diff ============================================================================== --- incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/resources/cayenne.xml (original) +++ incubator/cayenne/main/trunk/cayenne-regression-profiler/src/main/resources/cayenne.xml Sun May 21 12:29:07 2006 @@ -4,8 +4,8 @@ + datasource="regression-profile" + factory="org.apache.cayenne.profile.TestDataSourceFactory">