001
014
015 package com.liferay.portal.dao.jdbc;
016
017 import com.liferay.portal.kernel.dao.jdbc.CurrentConnection;
018 import com.liferay.portal.kernel.security.pacl.DoPrivileged;
019
020 import java.sql.Connection;
021
022 import javax.sql.DataSource;
023
024 import org.springframework.jdbc.datasource.ConnectionHolder;
025 import org.springframework.transaction.support.TransactionSynchronizationManager;
026
027
030 @DoPrivileged
031 public class CurrentConnectionImpl implements CurrentConnection {
032
033 @Override
034 public Connection getConnection(DataSource dataSource) {
035 ConnectionHolder connectionHolder =
036 (ConnectionHolder)TransactionSynchronizationManager.getResource(
037 dataSource);
038
039 if (connectionHolder == null) {
040 return null;
041 }
042 else {
043 return connectionHolder.getConnection();
044 }
045 }
046
047 }