org.redkale.source.DataMemorySource Maven / Gradle / Ivy
/*
* 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.io.Serializable;
import java.net.URL;
import java.sql.ResultSet;
import java.util.*;
import java.util.concurrent.*;
import java.util.function.*;
import org.redkale.service.Local;
import org.redkale.util.*;
/**
*
*
* @author zhangjx
*/
/**
* DataSource的Memory实现类
* 注意: javax.persistence.jdbc.url 需要指定为 memory:source
*
*
* 详情见: https://redkale.org
*
* @author zhangjx
*/
@Local
@AutoLoad(false)
@SuppressWarnings("unchecked")
@ResourceType(DataSource.class)
public class DataMemorySource extends DataSqlSource {
public DataMemorySource(String unitName, URL persistxml, Properties readprop, Properties writeprop) {
super(unitName, persistxml, readprop, writeprop);
this.cacheForbidden = false;
}
@Local
@Override
public String getType() {
return "memory";
}
@Override
protected boolean isOnlyCache(EntityInfo info) {
return true;
}
@Local
@Override
public int directExecute(String sql) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Local
@Override
public int[] directExecute(String... sqls) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Local
@Override
public V directQuery(String sql, Function handler) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
protected boolean isAsync() {
return true;
}
@Override
protected String prepareParamSign(int index) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
protected PoolSource createPoolSource(DataSource source, String rwtype, ArrayBlockingQueue queue, Semaphore semaphore, Properties prop) {
return null;
}
@Override
protected CompletableFuture insertDB(EntityInfo info, T... values) {
return CompletableFuture.completedFuture(0);
}
@Override
protected CompletableFuture deleteDB(EntityInfo info, Flipper flipper, String sql) {
return CompletableFuture.completedFuture(0);
}
@Override
protected CompletableFuture updateDB(EntityInfo info, T... values) {
return CompletableFuture.completedFuture(0);
}
@Override
protected CompletableFuture updateDB(EntityInfo info, Flipper flipper, String sql, boolean prepared, Object... params) {
return CompletableFuture.completedFuture(0);
}
@Override
protected CompletableFuture