P15GEN2\59518
2024-05-29 d4210c7c4b04abde20037ea8aa0f54ef8a2649aa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package foundation.data.getter;
 
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
 
import foundation.data.meta.field.FieldRuntimeCreator;
import foundation.data.meta.field.FieldsRuntime;
import foundation.data.meta.field.ResultMetaFieldReader;
import foundation.persist.ILoadable;
 
 
public abstract class DataGetter implements ILoadable {
 
    protected FieldsRuntime fieldsMeta;
    protected ResultSetMetaData resultMeta;
    
    
    public void load(ResultSet rslt, Object... args) throws Exception {
        resultMeta = rslt.getMetaData();
        
        if (fieldsMeta == null) {
            ResultMetaFieldReader fieldReader = new ResultMetaFieldReader(resultMeta);
            fieldsMeta = FieldRuntimeCreator.create(fieldReader);
        }
        
        loadData(rslt);
    }
 
    protected abstract void loadData(ResultSet rslt) throws Exception;
 
}