EMMA Coverage Report (generated Wed Jun 28 22:15:27 PDT 2006)
[all classes][org.apache.derby.jdbc]

COVERAGE SUMMARY FOR SOURCE FILE [ClientConnectionPoolDataSource.java]

nameclass, %method, %block, %line, %
ClientConnectionPoolDataSource.java100% (1/1)80%  (4/5)49%  (47/96)54%  (13/24)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class ClientConnectionPoolDataSource100% (1/1)80%  (4/5)49%  (47/96)54%  (13/24)
ClientConnectionPoolDataSource (): void 100% (1/1)100% (3/3)100% (2/2)
getPooledConnection (): PooledConnection 100% (1/1)68%  (19/28)71%  (5/7)
getPooledConnection (ClientDataSource, String, String): PooledConnection 0%   (0/1)0%   (0/29)0%   (0/7)
getPooledConnection (String, String): PooledConnection 100% (1/1)61%  (17/28)71%  (5/7)
getPooledConnectionX (LogWriter, ClientDataSource, String, String): PooledCon... 100% (1/1)100% (8/8)100% (1/1)

1/*
2 
3   Derby - Class org.apache.derby.jdbc.ClientConnectionPoolDataSource
4 
5   Copyright (c) 2001, 2005 The Apache Software Foundation or its licensors, where applicable.
6 
7   Licensed under the Apache License, Version 2.0 (the "License");
8   you may not use this file except in compliance with the License.
9   You may obtain a copy of the License at
10 
11      http://www.apache.org/licenses/LICENSE-2.0
12 
13   Unless required by applicable law or agreed to in writing, software
14   distributed under the License is distributed on an "AS IS" BASIS,
15   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   See the License for the specific language governing permissions and
17   limitations under the License.
18 
19*/
20 
21package org.apache.derby.jdbc;
22 
23import java.sql.SQLException;
24import javax.sql.ConnectionPoolDataSource;
25import javax.sql.DataSource;
26import javax.sql.PooledConnection;
27import org.apache.derby.client.am.LogWriter;
28import org.apache.derby.client.am.SqlException;
29 
30/**
31 * ClientConnectionPoolDataSource is a factory for PooledConnection objects.
32 * An object that implements this interface
33 * will typically be registered with a naming service that is based on the
34 * Java Naming and Directory Interface (JNDI). Use
35 * ClientConnectionPoolDataSource if your application runs under
36 * JDBC3.0 or JDBC2.0, that is, on the following Java Virtual Machines:
37 * <p/>
38 * <UL>
39 * <LI> JDBC 3.0 - Java 2 - JDK 1.4, J2SE 5.0
40 * <LI> JDBC 2.0 - Java 2 - JDK 1.2,1.3
41 * </UL>
42 */
43public class ClientConnectionPoolDataSource extends ClientDataSource 
44                                           implements ConnectionPoolDataSource {
45    private static final long serialVersionUID = -539234282156481377L;
46    public static final String className__ = "org.apache.derby.jdbc.ClientConnectionPoolDataSource";
47 
48    public ClientConnectionPoolDataSource() {
49        super();
50    }
51 
52    // ---------------------------interface methods-------------------------------
53 
54    // Attempt to establish a physical database connection that can be used as a pooled connection.
55    public PooledConnection getPooledConnection() throws SQLException {
56        try
57        {
58            LogWriter dncLogWriter = super.computeDncLogWriterForNewConnection("_cpds");
59            if (dncLogWriter != null) {
60                dncLogWriter.traceEntry(this, "getPooledConnection");
61            }
62            PooledConnection pooledConnection = getPooledConnectionX(dncLogWriter, this, getUser(), getPassword());
63            if (dncLogWriter != null) {
64                dncLogWriter.traceExit(this, "getPooledConnection", pooledConnection);
65            }
66            return pooledConnection;
67        }
68        catch ( SqlException se )
69        {
70            throw se.getSQLException();
71        }
72    }
73 
74    // Standard method that establishes the initial physical connection using CPDS properties.
75    public PooledConnection getPooledConnection(String user, String password) throws SQLException {
76        try
77        {
78            LogWriter dncLogWriter = super.computeDncLogWriterForNewConnection("_cpds");
79            if (dncLogWriter != null) {
80                dncLogWriter.traceEntry(this, "getPooledConnection", user, "<escaped>");
81            }
82            PooledConnection pooledConnection = getPooledConnectionX(dncLogWriter, this, user, password);
83            if (dncLogWriter != null) {
84                dncLogWriter.traceExit(this, "getPooledConnection", pooledConnection);
85            }
86            return pooledConnection;
87        }
88        catch ( SqlException se )
89        {
90            throw se.getSQLException();
91        }
92    }
93 
94    //  method that establishes the initial physical connection
95    // using DS properties instead of CPDS properties.
96    private PooledConnection getPooledConnectionX(LogWriter dncLogWriter, 
97                        ClientBaseDataSource ds, String user, 
98                        String password) throws SQLException {
99            return ClientDriver.getFactory().newClientPooledConnection(ds,
100                    dncLogWriter, user, password);
101    }   
102}

[all classes][org.apache.derby.jdbc]
EMMA 2.0.5312 (C) Vladimir Roubtsov