Author: lresende
Date: Wed May  7 22:12:22 2008
New Revision: 654416

URL: http://svn.apache.org/viewvc?rev=654416&view=rev
Log:
Fixing issues with database connection not being shutdown properly by 
sql-maven-plugin

Modified:
    
incubator/tuscany/java/sca/tutorial/assets/services/db/ShoppingCartTableImpl.java
    incubator/tuscany/java/sca/tutorial/pom.xml
    incubator/tuscany/java/sca/tutorial/store-db/pom.xml
    incubator/tuscany/java/sca/tutorial/store-supplier/pom.xml
    
incubator/tuscany/java/sca/tutorial/store-test/test/StoreSupplierTestCase.java

Modified: 
incubator/tuscany/java/sca/tutorial/assets/services/db/ShoppingCartTableImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/assets/services/db/ShoppingCartTableImpl.java?rev=654416&r1=654415&r2=654416&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/tutorial/assets/services/db/ShoppingCartTableImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/tutorial/assets/services/db/ShoppingCartTableImpl.java
 Wed May  7 22:12:22 2008
@@ -31,6 +31,7 @@
 import org.apache.tuscany.sca.implementation.data.collection.Entry;
 import org.apache.tuscany.sca.implementation.data.collection.NotFoundException;
 import org.osoa.sca.ServiceRuntimeException;
+import org.osoa.sca.annotations.Destroy;
 import org.osoa.sca.annotations.Init;
 import org.osoa.sca.annotations.Property;
 
@@ -53,6 +54,14 @@
         System.out.println("Connecting to database: " + url);
         connection = DriverManager.getConnection(url, "", "");
     }
+    
+    @Destroy
+    public void shutdown() throws Exception {
+        if(connection != null) {
+            connection.close();
+            connection = null;
+        }
+    }
 
     public Entry<String, Item>[] getAll() {
         try {

Modified: incubator/tuscany/java/sca/tutorial/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/pom.xml?rev=654416&r1=654415&r2=654416&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/pom.xml Wed May  7 22:12:22 2008
@@ -50,9 +50,7 @@
                 <module>catalog-webapp</module>
                 <module>catalog-ejb</module>
                 <module>catalog-mediation</module>
-                <!--
                 <module>store-test</module>
-                -->
             </modules>
         </profile>
 

Modified: incubator/tuscany/java/sca/tutorial/store-db/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-db/pom.xml?rev=654416&r1=654415&r2=654416&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-db/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store-db/pom.xml Wed May  7 22:12:22 
2008
@@ -71,41 +71,56 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>sql-maven-plugin</artifactId>
+                <!-- 1.1 due to MOJO-619 -->
+                <version>1.1-SNAPSHOT</version> 
 
-               <plugin>
-                    <groupId>org.codehaus.mojo</groupId>
-                    <artifactId>sql-maven-plugin</artifactId>
-                    <version>1.0</version>
-       
-                    <dependencies>
-                        <dependency>
-                            <groupId>org.apache.derby</groupId>
-                            <artifactId>derby</artifactId>
-                            <version>10.1.2.1</version>
-                        </dependency>
-                    </dependencies>
-       
-                    <executions>
-                        <execution>
-                            <id>create-db</id>
-                            <phase>generate-resources</phase>
-                            <goals>
-                                <goal>execute</goal>
-                            </goals>
-                            <configuration>
-                                
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
-                                
<url>jdbc:derby:${basedir}/target/cart-db;create=true</url>
-                                <autocommit>true</autocommit>
-                                <onError>continue</onError>
-                                <delimiter>;</delimiter>
-                                <srcFiles>
-                                    
<srcFile>${basedir}/../assets/services/db/cart.sql</srcFile>
-                                </srcFiles>
-                            </configuration>
-                        </execution>
-                    </executions>
-                </plugin>
-       </plugins>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.derby</groupId>
+                        <artifactId>derby</artifactId>
+                        <version>10.1.2.1</version>
+                    </dependency>
+                </dependencies>
+
+                <executions>
+                    <execution>
+                        <id>create-db</id>
+                        <phase>generate-resources</phase>
+                        <goals>
+                            <goal>execute</goal>
+                        </goals>
+                        <configuration>
+                            
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
+                            
<url>jdbc:derby:${basedir}/target/cart-db;create=true</url>
+                            <autocommit>true</autocommit>
+                            <onError>continue</onError>
+                            <onConnectionError>skip</onConnectionError>
+                            <delimiter>;</delimiter>
+                            <srcFiles>
+                                
<srcFile>${basedir}/../assets/services/db/cart.sql</srcFile>
+                            </srcFiles>
+                        </configuration>
+                    </execution>
+                    
+                    <!-- Shutdown DB in order to be able to run unit tests -->
+                    <execution>
+                       <id>shutdown-database-sothat-test-can-run</id>
+                       <phase>process-test-resources</phase>
+                       <goals>
+                               <goal>execute</goal>
+                       </goals>
+                       <configuration>
+                           
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
+                               
<url>jdbc:derby:${basedir}/target/cart-db;shutdown=true</url>
+                               
<skipOnConnectionError>true</skipOnConnectionError>
+                       </configuration>
+                    </execution>
+                </executions>
+            </plugin>  
+        </plugins>        
     </build>
 
 </project>

Modified: incubator/tuscany/java/sca/tutorial/store-supplier/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-supplier/pom.xml?rev=654416&r1=654415&r2=654416&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-supplier/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store-supplier/pom.xml Wed May  7 
22:12:22 2008
@@ -76,39 +76,55 @@
                 </executions>
             </plugin>
 
-               <plugin>
-                    <groupId>org.codehaus.mojo</groupId>
-                    <artifactId>sql-maven-plugin</artifactId>
-                    <version>1.0</version>
-       
-                    <dependencies>
-                        <dependency>
-                            <groupId>org.apache.derby</groupId>
-                            <artifactId>derby</artifactId>
-                            <version>10.1.2.1</version>
-                        </dependency>
-                    </dependencies>
-       
-                    <executions>
-                        <execution>
-                            <id>create-db</id>
-                            <phase>generate-resources</phase>
-                            <goals>
-                                <goal>execute</goal>
-                            </goals>
-                            <configuration>
-                                
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
-                                
<url>jdbc:derby:${basedir}/target/new-db;create=true</url>
-                                <autocommit>true</autocommit>
-                                <onError>continue</onError>
-                                <delimiter>;</delimiter>
-                                <srcFiles>
-                                    
<srcFile>${basedir}/../assets/services/db/cart.sql</srcFile>
-                                </srcFiles>
-                            </configuration>
-                        </execution>
-                    </executions>
-                </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>sql-maven-plugin</artifactId>
+                <!-- 1.1 due to MOJO-619 -->
+                <version>1.1-SNAPSHOT</version> 
+
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.derby</groupId>
+                        <artifactId>derby</artifactId>
+                        <version>10.1.2.1</version>
+                    </dependency>
+                </dependencies>
+
+                <executions>
+                    <execution>
+                        <id>create-db</id>
+                        <phase>generate-resources</phase>
+                        <goals>
+                            <goal>execute</goal>
+                        </goals>
+                        <configuration>
+                            
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
+                            
<url>jdbc:derby:${basedir}/target/cart-db;create=true</url>
+                            <autocommit>true</autocommit>
+                            <onError>continue</onError>
+                            <onConnectionError>skip</onConnectionError>
+                            <delimiter>;</delimiter>
+                            <srcFiles>
+                                
<srcFile>${basedir}/../assets/services/db/cart.sql</srcFile>
+                            </srcFiles>
+                        </configuration>
+                    </execution>
+                    
+                    <!-- Shutdown DB in order to be able to run unit tests -->
+                    <execution>
+                       <id>shutdown-database-sothat-test-can-run</id>
+                       <phase>process-test-resources</phase>
+                       <goals>
+                               <goal>execute</goal>
+                       </goals>
+                       <configuration>
+                           
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
+                               
<url>jdbc:derby:${basedir}/target/cart-db;shutdown=true</url>
+                               
<skipOnConnectionError>true</skipOnConnectionError>
+                       </configuration>
+                    </execution>
+                </executions>
+            </plugin>  
        </plugins>
     </build>
 

Modified: 
incubator/tuscany/java/sca/tutorial/store-test/test/StoreSupplierTestCase.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-test/test/StoreSupplierTestCase.java?rev=654416&r1=654415&r2=654416&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/tutorial/store-test/test/StoreSupplierTestCase.java 
(original)
+++ 
incubator/tuscany/java/sca/tutorial/store-test/test/StoreSupplierTestCase.java 
Wed May  7 22:12:22 2008
@@ -20,6 +20,7 @@
 package test;
 
 import junit.framework.Assert;
+import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.node.SCAClient;
 import org.apache.tuscany.sca.node.SCANode2;


Reply via email to