Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2008 Whohoo 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 com.googlecode.mycontainer.datasource;
 
 import java.util.Map;
 
 
 
 public class DataSourceDeployer extends Deployer implements ShutdownHookDataSource {
 
 	private static final long serialVersionUID = -2510091316151254781L;
 
 	private static final org.slf4j.Logger LOG = org.slf4j.LoggerFactory.getLogger(DataSourceDeployer.class);
 
 	private String transcationManagerName = "TransactionManager";
 
 	private String driver;
 
 	private String url;
 
 	private String user;
 
 	private String pass;
 
 	private String name;
 
 
 	private PrintWriter logWriter;
 
 	private int loginTimeout;
 
 	public void setTranscationManagerName(String transcationManagerName) {
 		this. = transcationManagerName;
 	}
 
 	public void setName(String name) {
 		this. = name;
 	}
 
 	public void setDriver(String driver) {
 		this. = driver;
 	}
 
 	public void setUrl(String url) {
 		this. = url;
 	}
 
 	public void setUser(String user) {
 		this. = user;
 	}
 
 	public void setPass(String pass) {
 		this. = pass;
 	}
 
 	public void setNewConnectionSql(String newConnectionSql) {
 		this. = newConnectionSql;
 	}
 
 	public void deploy() {
 		try {
 			Context ctx = getContext();
 			.info("Deploying: " + );
 			ctx.bind(this);
 		} catch (NamingException e) {
 			throw new DeployException(e);
 		}
	}
	public void shutdown() {
		try {
			Context ctx = getContext();
			.info("Undeploying: " + );
catch (NamingException e) {
			throw new DeployException(e);
		}
	}
	public Connection getConnection() throws SQLException {
	}
	public Connection getConnection(String usernameString password) {
		Connection ret = null;
		try {
			Context ctx = getContext();
				return ret;
			}
			TxEntry entry = new TxEntry(tx);
			Map<TxEntryConnectionconnections = lookupConnections();
			ret = connections.get(entry);
			if (ret != null) {
				return ret;
			}
			ret = enlist(rettx);
			connections.put(entryret);
			return ret;
catch (ClassNotFoundException e) {
			throw new DeployException(e);
catch (SQLException e) {
			throw new DeployException(e);
catch (NamingException e) {
			throw new DeployException(e);
catch (SystemException e) {
			throw new DeployException(e);
catch (RollbackException e) {
			throw new DeployException(e);
catch (RuntimeException e) {
			throw e;
		}
	}
		ret = DriverManager.getConnection();
		ret.setAutoCommit(false);
		return ret;
	}
	private void handleNewConnection(Connection conthrows SQLException {
		if ( != null && .trim().length() > 0) {
			try {
finally {
				try {
					st.close();
catch (SQLException ex) {
					.error("Error closing st."ex);
				}
			}
		}
	}
	@SuppressWarnings("unchecked")
		Context ctx = getContext();
		try {
			try {
				Map<TxEntryConnectionret = (Map<TxEntryConnection>) ctx.lookup("tl/ds/connections");
				return ret;
catch (NameNotFoundException e) {
				ctx.bind("tl/ds/connections"ret);
				return ret;
			}
catch (NamingException e) {
			throw new KernelRuntimeException(e);
		}
	}
	private void rollbackAndClose(Connection ret) {
		if (ret != null) {
			try {
				ret.rollback();
				ret.close();
catch (Exception e) {
				.error("Error closing"e);
			}
		}
	}
	private Connection enlist(Connection retTransaction tx) {
		try {
			ConnectionResource resource = new ConnectionResource(ret);
			tx.enlistResource(resource);
			return resource.getProxy();
catch (SystemException e) {
			throw new KernelRuntimeException(e);
catch (IllegalStateException e) {
			throw new KernelRuntimeException(e);
catch (RollbackException e) {
			throw new KernelRuntimeException(e);
		}
	}
	public PrintWriter getLogWriter() throws SQLException {
		return this.;
	}
	public int getLoginTimeout() throws SQLException {
		return this.;
	}
	public void setLogWriter(PrintWriter outthrows SQLException {
		this. = out;
	}
	public void setLoginTimeout(int secondsthrows SQLException {
		this. = seconds;
	}
	public boolean isWrapperFor(Class<?> ifacethrows SQLException {
		throw new KernelRuntimeException("unsupported opration");
	}
	public <T> T unwrap(Class<T> ifacethrows SQLException {
		throw new KernelRuntimeException("unsupported opration");
	}
	public Logger getParentLogger() {
		throw new KernelRuntimeException("unsupported opration");
	}
New to GrepCode? Check out our FAQ X