11package com .codingapi .dbstream .serializable ;
22
33import com .codingapi .dbstream .scanner .DbTable ;
4+ import com .codingapi .dbstream .utils .FileReaderUtils ;
45
56import java .io .File ;
67import java .io .ObjectInputStream ;
78import java .io .ObjectOutputStream ;
89import java .nio .file .Files ;
910import java .nio .file .Paths ;
11+ import java .util .ArrayList ;
12+ import java .util .Arrays ;
13+ import java .util .List ;
1014import java .util .logging .Level ;
1115import java .util .logging .Logger ;
1216
@@ -19,7 +23,7 @@ public DBTableSerializableHelper(String jdbcKey) {
1923 this .path = new File ("./.dbstream/" + jdbcKey + "/" );
2024 if (!this .path .exists ()) {
2125 boolean result = path .mkdirs ();
22- LOGGER .log (Level .INFO , "Serializable Table directory created: {0}, File Path: {1}" ,
26+ LOGGER .log (Level .INFO , "Serializable Table directory created: {0}, File Path: {1}" ,
2327 new Object []{result , this .path .getAbsolutePath ()});
2428 }
2529 }
@@ -30,6 +34,19 @@ public void clean() {
3034 }
3135 }
3236
37+ public List <String > loadPrimaryKeyByLocalFile (String tableName ) {
38+ File file = new File (this .path + "/" + tableName + ".key" );
39+ List <String > data = FileReaderUtils .read (file );
40+ if (data !=null && !data .isEmpty ()) {
41+ List <String > columns = new ArrayList <>();
42+ for (String line : data ) {
43+ columns .addAll (Arrays .asList (line .split ("," )));
44+ }
45+ return columns ;
46+ }
47+ return null ;
48+ }
49+
3350 private void deleteRecursively (File file ) {
3451 if (file .isDirectory ()) {
3552 File [] files = file .listFiles ();
0 commit comments