Skip to content

Commit 04a993f

Browse files
committed
Added seeding to migrate
1 parent 3531192 commit 04a993f

File tree

4 files changed

+30
-1
lines changed

4 files changed

+30
-1
lines changed

src/main/java/org/javawebstack/framework/WebApplication.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import org.javawebstack.framework.config.Config;
1010
import org.javawebstack.framework.job.*;
1111
import org.javawebstack.framework.module.Module;
12+
import org.javawebstack.framework.seed.AllSeeder;
1213
import org.javawebstack.framework.seed.FileSeeder;
1314
import org.javawebstack.framework.seed.MergedSeeder;
1415
import org.javawebstack.framework.seed.Seeder;
@@ -63,6 +64,8 @@ public WebApplication(){
6364
crypt = new Crypt(config.has("crypt.key") ? config.get("crypt.key") : Crypt.generateKey());
6465
injector.setInstance(Crypt.class, crypt);
6566

67+
addSeeder("all", new AllSeeder());
68+
6669
modules.forEach(m -> m.setupConfig(this, config));
6770
if(config.get("database.driver", "none").equalsIgnoreCase("sqlite")){
6871
sql = new SQLite(config.get("database.file", "db.sqlite"));
@@ -129,6 +132,10 @@ public WebApplication(){
129132
);
130133
}
131134

135+
public Map<String, Seeder> getSeeders(){
136+
return seeders;
137+
}
138+
132139
public void addTranslation(Locale locale, ClassLoader classLoader, String resource){
133140
if(!resource.endsWith(".json"))
134141
resource += ".json";

src/main/java/org/javawebstack/framework/command/DBMigrateCommand.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,18 @@
33
import org.javawebstack.command.Command;
44
import org.javawebstack.command.CommandResult;
55
import org.javawebstack.command.CommandSystem;
6+
import org.javawebstack.framework.WebApplication;
7+
import org.javawebstack.injector.Inject;
68
import org.javawebstack.orm.ORM;
79

810
import java.util.List;
911
import java.util.Map;
1012

1113
public class DBMigrateCommand implements Command {
1214

15+
@Inject
16+
private WebApplication app;
17+
1318
public CommandResult execute(CommandSystem commandSystem, List<String> args, Map<String, List<String>> params) {
1419
if(params.containsKey("a")){
1520
if(params.containsKey("d")){
@@ -18,6 +23,8 @@ public CommandResult execute(CommandSystem commandSystem, List<String> args, Map
1823
return CommandResult.success();
1924
}
2025
ORM.autoMigrate(params.containsKey("f"));
26+
if(params.containsKey("s"))
27+
app.getSeeder("all").seed();
2128
System.out.println("Auto-Migration successful!");
2229
return CommandResult.success();
2330
}

src/main/java/org/javawebstack/framework/command/DBSeedCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
public class DBSeedCommand implements Command {
1313

1414
@Inject
15-
WebApplication application;
15+
private WebApplication application;
1616

1717
public CommandResult execute(CommandSystem commandSystem, List<String> args, Map<String, List<String>> params) {
1818
if(args.size() == 0)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package org.javawebstack.framework.seed;
2+
3+
import org.javawebstack.framework.WebApplication;
4+
import org.javawebstack.injector.Inject;
5+
6+
public class AllSeeder implements Seeder {
7+
8+
@Inject
9+
private WebApplication app;
10+
11+
public void seed() {
12+
app.getSeeders().forEach((n,s) -> s.seed());
13+
}
14+
15+
}

0 commit comments

Comments
 (0)