Here is full code for solution to my problem. For example I want 2 database files: database1 and database2 then I would do something like that. Note that putting them in different schemas will make GreenDao to create 2 .db files.
public class ExampleDaoGenerator {
// Your first database schema version
private static final int _data1SchemaVer = 1;
// Your second database schema version
private static final int _data2SchemaVer = 1;
// Your first database package
private static final String _data1Package = "com.noitra.data.database1";
// Your second database package
private static final String _data2Package = "com.noitra.data.database2";
// Path to save generated files
private static final String _path = "../MyApplication/src-gen";
public static void main(String[] args) {
// Database1 schema
Schema data1Schema = new Schema(_data1SchemaVer, _data1Package);
data1Schema.enableKeepSectionsByDefault();
// Database2 schema
Schema data2Schema = new Schema(_data2SchemaVer, _data2Package);
data2Schema.enableKeepSectionsByDefault();
//Add methods where you define your databases
addData1Method(data1Schema);
addData2Method(data2Schema);
// Generate your databases
try {
DaoGenerator gen = new DaoGenerator();
// Generate database1
gen.generateAll(data1Schema, _path);
// Generate database2
gen.generateAll(data2Schema, _path);
System.out.println("Successfully generated all files to: " + _path);
} catch (IOException e) {
e.printStackTrace();
System.out.println("IOException error: " + e.getMessage());
} catch (Exception e) {
e.printStackTrace();
System.out.println("Exception error: " + e.getMessage());
}
}
private static void addData1Method(Schema schema) {
// DEFINE YOUR DATABASE1 HERE
}
private static void addData2Method(Schema schema) {
// DEFINE YOUR DATABASE2 HERE
}