This commit is contained in:
wentch
2015-12-28 16:43:27 +08:00
parent faad9125b4
commit c04704c8c2
4 changed files with 2 additions and 229 deletions

View File

@@ -19,21 +19,11 @@ import org.redkale.util.*;
* @author zhangjx
*/
@AutoLoad(false)
public class DataSourceService implements DataSource, Service, AutoCloseable {
public class DataSourceService implements DataSource, Service, AutoCloseable {
@Resource(name = "$")
private DataSource source;
@Override
public DataConnection createReadConnection() {
return source.createReadConnection();
}
@Override
public DataConnection createWriteConnection() {
return source.createWriteConnection();
}
@Override
public <T> void insert(@DynCall(DataCallArrayAttribute.class) T... values) {
source.insert(values);
@@ -45,11 +35,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, values);
}
@Override
public <T> void insert(DataConnection conn, @DynCall(DataCallArrayAttribute.class) T... values) {
source.insert(conn, values);
}
@Override
public <T> void delete(T... values) {
source.delete(values);
@@ -61,11 +46,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, values);
}
@Override
public <T> void delete(DataConnection conn, T... values) {
source.delete(conn, values);
}
@Override
public <T> void delete(final Class<T> clazz, final Serializable... ids) {
source.delete(clazz, ids);
@@ -77,11 +57,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, ids);
}
@Override
public <T> void delete(DataConnection conn, Class<T> clazz, final Serializable... ids) {
source.delete(conn, clazz, ids);
}
@Override
public <T> void delete(final Class<T> clazz, FilterNode node) {
source.delete(clazz, node);
@@ -93,11 +68,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, node);
}
@Override
public <T> void delete(DataConnection conn, Class<T> clazz, FilterNode node) {
source.delete(conn, clazz, node);
}
@Override
public <T> void update(T... values) {
source.update(values);
@@ -109,11 +79,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, values);
}
@Override
public <T> void update(DataConnection conn, T... values) {
source.update(conn, values);
}
@Override
public <T> void updateColumn(final Class<T> clazz, final Serializable id, final String column, final Serializable value) {
source.updateColumn(clazz, id, column, value);
@@ -125,11 +90,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumn(DataConnection conn, Class<T> clazz, final Serializable id, final String column, final Serializable value) {
source.updateColumn(conn, clazz, id, column, value);
}
@Override
public <T> void updateColumnIncrement(final Class<T> clazz, final Serializable id, final String column, long incvalue) {
source.updateColumnIncrement(clazz, id, column, incvalue);
@@ -141,11 +101,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumnIncrement(DataConnection conn, Class<T> clazz, final Serializable id, final String column, long incvalue) {
source.updateColumnIncrement(conn, clazz, id, column, incvalue);
}
@Override
public <T> void updateColumnAnd(final Class<T> clazz, final Serializable id, final String column, long incvalue) {
source.updateColumnAnd(clazz, id, column, incvalue);
@@ -157,11 +112,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumnAnd(DataConnection conn, Class<T> clazz, final Serializable id, final String column, long incvalue) {
source.updateColumnAnd(conn, clazz, id, column, incvalue);
}
@Override
public <T> void updateColumnOr(final Class<T> clazz, final Serializable id, final String column, long incvalue) {
source.updateColumnOr(clazz, id, column, incvalue);
@@ -173,11 +123,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumnOr(DataConnection conn, Class<T> clazz, final Serializable id, final String column, long incvalue) {
source.updateColumnOr(conn, clazz, id, column, incvalue);
}
@Override
public <T> void updateColumns(T value, final String... columns) {
source.updateColumns(value, columns);
@@ -189,11 +134,6 @@ public class DataSourceService implements DataSource, Service, AutoCloseable {
if (handler != null) handler.completed(null, value);
}
@Override
public <T> void updateColumns(DataConnection conn, T value, final String... columns) {
source.updateColumns(conn, value, columns);
}
@Override
public Number getNumberResult(final Class entityClass, FilterFunc func, final String column) {
return source.getNumberResult(entityClass, func, column);

View File

@@ -1,56 +0,0 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.redkale.source;
import java.sql.*;
/**
*
* @see http://www.redkale.org
* @author zhangjx
*/
public class DataConnection {
private final Connection conn;
protected DataConnection(Connection connection) {
this.conn = connection;
}
protected Connection getConnection() {
return this.conn;
}
public boolean close() {
try {
if (conn == null || conn.isClosed()) return true;
conn.close();
return true;
} catch (Exception e) {
//do nothing
return false;
}
}
public boolean commit() {
try {
conn.commit();
return true;
} catch (Exception e) {
return false;
}
}
public boolean rollback() {
try {
conn.rollback();
return true;
} catch (Exception e) {
//do nothing
return false;
}
}
}

View File

@@ -226,16 +226,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
return name;
}
@Override
public DataConnection createReadConnection() {
return new DataConnection(createReadSQLConnection());
}
@Override
public DataConnection createWriteConnection() {
return new DataConnection(createWriteSQLConnection());
}
@Override
public void close() throws Exception {
readPool.close();
@@ -272,10 +262,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
}
}
public <T> void execute(final DataConnection conn, String... sqls) {
execute((Connection) conn.getConnection(), sqls);
}
private <T> void execute(final Connection conn, String... sqls) {
if (sqls.length == 0) return;
try {
@@ -340,24 +326,9 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, values);
}
/**
* 新增对象, 必须是Entity对象
*
* @param <T>
* @param conn
* @param values
*/
@Override
public <T> void insert(final DataConnection conn, T... values) {
if (values.length == 0) return;
final EntityInfo<T> info = loadEntityInfo((Class<T>) values[0].getClass());
insert((Connection) conn.getConnection(), info, values);
}
private <T> void insert(final Connection conn, final EntityInfo<T> info, T... values) {
if (values.length == 0) return;
try {
final EntityCache<T> cache = info.getCache();
if (!info.isVirtualEntity()) {
final String sql = info.insertSQL;
final PreparedStatement prestmt = info.autoGenerated
@@ -481,6 +452,7 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
}
}
}
final EntityCache<T> cache = info.getCache();
if (cache != null) {
for (final T value : values) {
cache.insert(value);
@@ -531,13 +503,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, values);
}
@Override
public <T> void delete(final DataConnection conn, T... values) {
if (values.length == 0) return;
final EntityInfo<T> info = loadEntityInfo((Class<T>) values[0].getClass());
delete((Connection) conn.getConnection(), info, values);
}
private <T> void delete(final Connection conn, final EntityInfo<T> info, T... values) {
if (values.length == 0) return;
final Attribute primary = info.getPrimary();
@@ -570,11 +535,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, ids);
}
@Override
public <T> void delete(final DataConnection conn, Class<T> clazz, Serializable... ids) {
delete((Connection) conn.getConnection(), loadEntityInfo(clazz), ids);
}
private <T> void delete(final Connection conn, final EntityInfo<T> info, Serializable... keys) {
if (keys.length == 0) return;
try {
@@ -619,11 +579,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, node);
}
@Override
public <T> void delete(final DataConnection conn, Class<T> clazz, FilterNode node) {
delete((Connection) conn.getConnection(), loadEntityInfo(clazz), node);
}
private <T> void delete(final Connection conn, final EntityInfo<T> info, final FilterNode node) {
try {
if (!info.isVirtualEntity()) {
@@ -686,13 +641,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, values);
}
@Override
public <T> void update(final DataConnection conn, T... values) {
if (values.length == 0) return;
final EntityInfo<T> info = loadEntityInfo((Class<T>) values[0].getClass());
update((Connection) conn.getConnection(), info, values);
}
private <T> void update(final Connection conn, final EntityInfo<T> info, T... values) {
try {
Class clazz = info.getType();
@@ -784,11 +732,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumn(DataConnection conn, Class<T> clazz, Serializable id, String column, Serializable value) {
updateColumn((Connection) conn.getConnection(), loadEntityInfo(clazz), id, column, value);
}
private <T> void updateColumn(Connection conn, final EntityInfo<T> info, Serializable id, String column, Serializable value) {
try {
if (!info.isVirtualEntity()) {
@@ -842,11 +785,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumnIncrement(DataConnection conn, Class<T> clazz, Serializable id, String column, long incvalue) {
updateColumnIncrement((Connection) conn.getConnection(), loadEntityInfo(clazz), id, column, incvalue);
}
private <T> void updateColumnIncrement(Connection conn, final EntityInfo<T> info, Serializable id, String column, long incvalue) {
try {
if (!info.isVirtualEntity()) {
@@ -902,11 +840,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumnAnd(DataConnection conn, Class<T> clazz, Serializable id, String column, long andvalue) {
updateColumnAnd((Connection) conn.getConnection(), loadEntityInfo(clazz), id, column, andvalue);
}
private <T> void updateColumnAnd(Connection conn, final EntityInfo<T> info, Serializable id, String column, long andvalue) {
try {
if (!info.isVirtualEntity()) {
@@ -962,11 +895,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, id);
}
@Override
public <T> void updateColumnOr(DataConnection conn, Class<T> clazz, Serializable id, String column, long orvalue) {
updateColumnOr((Connection) conn.getConnection(), loadEntityInfo(clazz), id, column, orvalue);
}
private <T> void updateColumnOr(Connection conn, final EntityInfo<T> info, Serializable id, String column, long orvalue) {
try {
if (!info.isVirtualEntity()) {
@@ -1020,11 +948,6 @@ public final class DataDefaultSource implements DataSource, Function<Class, Enti
if (handler != null) handler.completed(null, value);
}
@Override
public <T> void updateColumns(final DataConnection conn, final T value, final String... columns) {
updateColumns((Connection) conn.getConnection(), loadEntityInfo((Class<T>) value.getClass()), value, columns);
}
private <T> void updateColumns(final Connection conn, final EntityInfo<T> info, final T value, final String... columns) {
if (value == null || columns.length < 1) return;
try {

View File

@@ -18,20 +18,6 @@ import org.redkale.util.*;
@SuppressWarnings("unchecked")
public interface DataSource {
/**
* 创建读连接
*
* @return
*/
public DataConnection createReadConnection();
/**
* 创建写连接
*
* @return
*/
public DataConnection createWriteConnection();
//----------------------insert-----------------------------
/**
* 新增对象, 必须是Entity对象
@@ -41,8 +27,6 @@ public interface DataSource {
*/
public <T> void insert(final T... values);
public <T> void insert(final DataConnection conn, final T... values);
//----------------------异步版---------------------------------
public <T> void insert(final CompletionHandler<Void, T[]> handler, final T... values);
@@ -55,16 +39,10 @@ public interface DataSource {
*/
public <T> void delete(final T... values);
public <T> void delete(final DataConnection conn, final T... values);
public <T> void delete(final Class<T> clazz, final Serializable... ids);
public <T> void delete(final DataConnection conn, final Class<T> clazz, final Serializable... ids);
public <T> void delete(final Class<T> clazz, final FilterNode node);
public <T> void delete(final DataConnection conn, final Class<T> clazz, final FilterNode node);
//----------------------异步版---------------------------------
public <T> void delete(final CompletionHandler<Void, T[]> handler, final T... values);
@@ -81,28 +59,16 @@ public interface DataSource {
*/
public <T> void update(final T... values);
public <T> void update(final DataConnection conn, final T... values);
public <T> void updateColumn(final Class<T> clazz, final Serializable id, final String column, final Serializable value);
public <T> void updateColumn(final DataConnection conn, final Class<T> clazz, final Serializable id, final String column, final Serializable value);
public <T> void updateColumnIncrement(final Class<T> clazz, final Serializable id, final String column, long incvalue);
public <T> void updateColumnIncrement(final DataConnection conn, final Class<T> clazz, final Serializable id, final String column, long incvalue);
public <T> void updateColumnAnd(final Class<T> clazz, final Serializable id, final String column, long incvalue);
public <T> void updateColumnAnd(final DataConnection conn, final Class<T> clazz, final Serializable id, final String column, long incvalue);
public <T> void updateColumnOr(final Class<T> clazz, final Serializable id, final String column, long incvalue);
public <T> void updateColumnOr(final DataConnection conn, final Class<T> clazz, final Serializable id, final String column, long incvalue);
public <T> void updateColumns(final T value, final String... columns);
public <T> void updateColumns(final DataConnection conn, final T value, final String... columns);
//----------------------异步版---------------------------------
public <T> void update(final CompletionHandler<Void, T[]> handler, final T... values);