|
|
|
|
@ -6,22 +6,22 @@ import org.jetbrains.annotations.NotNull;
|
|
|
|
|
import org.leolo.nrdatad.db.DatabaseManager; |
|
|
|
|
import org.leolo.nrdatad.db.ParameterStore; |
|
|
|
|
import org.leolo.nrdatad.db.SearchMode; |
|
|
|
|
import org.leolo.nrdatad.model.CORPUS; |
|
|
|
|
import org.leolo.nrdatad.model.Corpus; |
|
|
|
|
|
|
|
|
|
import java.sql.*; |
|
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
|
|
public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao { |
|
|
|
|
public class CorpusDao extends org.leolo.nrdatad.db.CorpusDao { |
|
|
|
|
|
|
|
|
|
Logger log = LogManager.getLogger(); |
|
|
|
|
|
|
|
|
|
public CORPUSDao(DatabaseManager manager) { |
|
|
|
|
public CorpusDao(DatabaseManager manager) { |
|
|
|
|
super(manager); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Collection<CORPUS> executeQuery(org.leolo.nrdatad.db.CORPUSDao.Query query) throws SQLException { |
|
|
|
|
Vector<CORPUS> corpuses = new Vector<>(); |
|
|
|
|
public Collection<Corpus> executeQuery(org.leolo.nrdatad.db.CorpusDao.Query query) throws SQLException { |
|
|
|
|
Vector<Corpus> corpuses = new Vector<>(); |
|
|
|
|
ParameterStore params = new ParameterStore(); |
|
|
|
|
StringBuilder sql = new StringBuilder(); |
|
|
|
|
if(query.getSearchMode()== SearchMode.MATCH_ALL_GROUP || query.getSearchMode()==SearchMode.MATCH_ANY){ |
|
|
|
|
@ -95,7 +95,7 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void add(@NotNull CORPUS corpus) throws SQLException { |
|
|
|
|
public void add(@NotNull Corpus corpus) throws SQLException { |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement( |
|
|
|
|
@ -115,14 +115,14 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void addAll(@NotNull Collection<CORPUS> datas) throws SQLException { |
|
|
|
|
public void addAll(@NotNull Collection<Corpus> datas) throws SQLException { |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement( |
|
|
|
|
"INSERT INTO corpus (stanox, uic_code, crs_code, tiploc_code, nlc_code, `desc`, short_desc) " + |
|
|
|
|
"VALUES (?,?,?,?,?,?,?)") |
|
|
|
|
){ |
|
|
|
|
for(CORPUS corpus:datas) { |
|
|
|
|
for(Corpus corpus:datas) { |
|
|
|
|
setString(pstmt, 1, corpus.getStanoxCode()); |
|
|
|
|
setString(pstmt, 2, corpus.getUicCode()); |
|
|
|
|
setString(pstmt, 3, corpus.getCrsCode()); |
|
|
|
|
@ -139,7 +139,7 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void replaceAll(@NotNull Collection<CORPUS> datas) throws SQLException { |
|
|
|
|
public void replaceAll(@NotNull Collection<Corpus> datas) throws SQLException { |
|
|
|
|
int totalCount = 0, insertCount = 0, updateCount = 0; |
|
|
|
|
HashSet<String> pendingInsert = new HashSet<>(); |
|
|
|
|
try( |
|
|
|
|
@ -153,9 +153,9 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
"WHERE nlc_code = ?" |
|
|
|
|
) |
|
|
|
|
){ |
|
|
|
|
for(CORPUS corpus:datas){ |
|
|
|
|
for(Corpus corpus:datas){ |
|
|
|
|
totalCount++; |
|
|
|
|
CORPUS existing = searchCORPUSByNlcCode(corpus.getNlcCode()); |
|
|
|
|
Corpus existing = searchCORPUSByNlcCode(corpus.getNlcCode()); |
|
|
|
|
PreparedStatement stmt = null; |
|
|
|
|
if(corpus.equals(existing)){ |
|
|
|
|
continue; |
|
|
|
|
@ -220,7 +220,7 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void update(CORPUS corpus) throws SQLException { |
|
|
|
|
public void update(Corpus corpus) throws SQLException { |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement( |
|
|
|
|
@ -241,8 +241,8 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Collection<CORPUS> searchCORPUSByStanoxCode(String stanoxCode) throws SQLException { |
|
|
|
|
Collection<CORPUS> corpuses = new Vector<>(); |
|
|
|
|
public Collection<Corpus> searchCORPUSByStanoxCode(String stanoxCode) throws SQLException { |
|
|
|
|
Collection<Corpus> corpuses = new Vector<>(); |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM corpus WHERE stanox = ?") |
|
|
|
|
@ -258,8 +258,8 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Collection<CORPUS> searchCORPUSByUicCode(String uicCode) throws SQLException { |
|
|
|
|
Collection<CORPUS> corpuses = new Vector<>(); |
|
|
|
|
public Collection<Corpus> searchCORPUSByUicCode(String uicCode) throws SQLException { |
|
|
|
|
Collection<Corpus> corpuses = new Vector<>(); |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM corpus WHERE uic_code = ?") |
|
|
|
|
@ -275,8 +275,8 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Collection<CORPUS> searchCORPUSByCrsCode(String crsCode) throws SQLException { |
|
|
|
|
Collection<CORPUS> corpuses = new Vector<>(); |
|
|
|
|
public Collection<Corpus> searchCORPUSByCrsCode(String crsCode) throws SQLException { |
|
|
|
|
Collection<Corpus> corpuses = new Vector<>(); |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM corpus WHERE crs_code = ?") |
|
|
|
|
@ -292,8 +292,8 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public Collection<CORPUS> searchCORPUSByTiplocCode(String tiplocCode) throws SQLException { |
|
|
|
|
Collection<CORPUS> corpuses = new Vector<>(); |
|
|
|
|
public Collection<Corpus> searchCORPUSByTiplocCode(String tiplocCode) throws SQLException { |
|
|
|
|
Collection<Corpus> corpuses = new Vector<>(); |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM corpus WHERE tiploc_code = ?") |
|
|
|
|
@ -309,7 +309,7 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public CORPUS searchCORPUSByNlcCode(String nlcCode) throws SQLException { |
|
|
|
|
public Corpus searchCORPUSByNlcCode(String nlcCode) throws SQLException { |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM corpus WHERE nlc_code = ?") |
|
|
|
|
@ -325,9 +325,9 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public List<CORPUS> searchCORPUSByName(String name) throws SQLException { |
|
|
|
|
public List<Corpus> searchCORPUSByName(String name) throws SQLException { |
|
|
|
|
|
|
|
|
|
List<CORPUS> corpuses = new Vector<>(); |
|
|
|
|
List<Corpus> corpuses = new Vector<>(); |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement( |
|
|
|
|
@ -350,8 +350,8 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
return corpuses; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private CORPUS parseCORPUS(ResultSet rs) throws SQLException{ |
|
|
|
|
CORPUS corpus = new CORPUS(); |
|
|
|
|
private Corpus parseCORPUS(ResultSet rs) throws SQLException{ |
|
|
|
|
Corpus corpus = new Corpus(); |
|
|
|
|
corpus.setStanoxCode(rs.getString("stanox")); |
|
|
|
|
corpus.setUicCode(rs.getString("uic_code")); |
|
|
|
|
corpus.setCrsCode(rs.getString("crs_code")); |
|
|
|
|
@ -363,8 +363,8 @@ public class CORPUSDao extends org.leolo.nrdatad.db.CORPUSDao {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public CORPUS delete(String nlcCode) throws SQLException { |
|
|
|
|
CORPUS deletedEntry = searchCORPUSByNlcCode(nlcCode); |
|
|
|
|
public Corpus delete(String nlcCode) throws SQLException { |
|
|
|
|
Corpus deletedEntry = searchCORPUSByNlcCode(nlcCode); |
|
|
|
|
if(deletedEntry!=null){ |
|
|
|
|
try( |
|
|
|
|
Connection conn = getConnection(); |