001
014
015 package com.liferay.portal.scheduler.quartz;
016
017 import com.liferay.portal.dao.shard.ShardDataSourceTargetSource;
018 import com.liferay.portal.kernel.log.Log;
019 import com.liferay.portal.kernel.log.LogFactoryUtil;
020 import com.liferay.portal.kernel.util.InfrastructureUtil;
021
022 import java.sql.Connection;
023
024 import javax.sql.DataSource;
025
026 import org.quartz.utils.ConnectionProvider;
027
028
031 public class QuartzConnectionProvider implements ConnectionProvider {
032
033 public Connection getConnection() {
034 Connection con = null;
035
036 try {
037 ShardDataSourceTargetSource shardDataSourceTargetSource =
038 (ShardDataSourceTargetSource)
039 InfrastructureUtil.getShardDataSourceTargetSource();
040
041 if (shardDataSourceTargetSource != null) {
042 shardDataSourceTargetSource.resetDataSource();
043 }
044
045 DataSource dataSource = InfrastructureUtil.getDataSource();
046
047 con = dataSource.getConnection();
048 }
049 catch (Exception e) {
050 _log.error(e, e);
051 }
052
053 return con;
054 }
055
056 public void shutdown() {
057 }
058
059 private static Log _log = LogFactoryUtil.getLog(
060 QuartzConnectionProvider.class);
061
062 }