Skip to content

Commit c721095

Browse files
author
David Baum
committed
implement interfaces and factory pattern
1 parent d6a27cf commit c721095

31 files changed

Lines changed: 858 additions & 583 deletions

generator2/org.getaviz.generator/src/main/java/org/getaviz/generator/Generator.java

Lines changed: 8 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -2,64 +2,18 @@
22

33
import org.apache.commons.logging.Log;
44
import org.apache.commons.logging.LogFactory;
5-
import org.getaviz.generator.city.m2m.City2City;
6-
import org.getaviz.generator.city.m2t.City2AFrame;
7-
import org.getaviz.generator.city.m2t.City2X3D;
8-
import org.getaviz.generator.jqa.DatabaseBuilder;
9-
import org.getaviz.generator.jqa.JQA2JSON;
10-
import org.getaviz.generator.rd.m2m.RD2RD;
11-
import org.getaviz.generator.rd.m2t.RD2AFrame;
12-
import org.getaviz.generator.rd.m2t.RD2X3D;
13-
import org.getaviz.generator.city.s2m.JQA2City;
14-
import org.getaviz.generator.rd.s2m.JQA2RD;
155

16-
public class Generator {
17-
private static SettingsConfiguration config = SettingsConfiguration.getInstance();
18-
private static Log log = LogFactory.getLog(Generator.class);
6+
class Generator {
7+
private Log log = LogFactory.getLog(this.getClass());
8+
private Metaphor metaphor;
199

20-
public static void main(String[] args) {
21-
run();
10+
Generator(SettingsConfiguration config) {
11+
metaphor = MetaphorFactory.createMetaphor(config);
2212
}
2313

24-
public static void run() {
14+
void run() {
2515
log.info("Generator started");
26-
try {
27-
if(!config.isSkipScan()) {
28-
new DatabaseBuilder();
29-
}
30-
switch (config.getMetaphor()) {
31-
case CITY: {
32-
new JQA2City();
33-
new JQA2JSON();
34-
new City2City();
35-
switch (config.getOutputFormat()) {
36-
case X3D:
37-
new City2X3D(); break;
38-
case AFrame:
39-
new City2AFrame(); break;
40-
}
41-
break;
42-
}
43-
case RD: {
44-
new JQA2RD();
45-
new JQA2JSON();
46-
new RD2RD();
47-
switch (config.getOutputFormat()) {
48-
case X3D: {
49-
new RD2X3D();
50-
break;
51-
}
52-
case AFrame: {
53-
new RD2AFrame();
54-
break;
55-
}
56-
}
57-
break;
58-
}
59-
}
60-
61-
} catch (Exception e) {
62-
log.error(e);
63-
}
16+
metaphor.generate();
17+
log.info("Generator finished");
6418
}
6519
}

generator2/org.getaviz.generator/src/main/java/org/getaviz/generator/GeneratorServlet.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import java.io.IOException;
44
import java.io.PrintWriter;
5-
import javax.servlet.ServletException;
65
import javax.servlet.http.HttpServlet;
76
import javax.servlet.http.HttpServletRequest;
87
import javax.servlet.http.HttpServletResponse;
@@ -13,19 +12,21 @@
1312

1413
public class GeneratorServlet extends HttpServlet {
1514
private static final long serialVersionUID = -5343549433924172589L;
16-
private static Log log = LogFactory.getLog(GeneratorServlet.class);
15+
private static final Log log = LogFactory.getLog(GeneratorServlet.class);
1716

18-
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
17+
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
1918
log.info("GET request generator");
2019
SettingsConfiguration config = SettingsConfiguration.getInstance("/opt/config/settings.properties");
21-
Generator.run();
20+
Generator generator = new Generator(config);
21+
generator.run();
2222
writeResponse(response, config);
2323
}
2424

25-
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
25+
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException {
2626
log.info("POST request generator");
2727
SettingsConfiguration config = SettingsConfiguration.getInstance(request);
28-
Generator.run();
28+
Generator generator = new Generator(config);
29+
generator.run();
2930
writeResponse(response, config);
3031
}
3132

@@ -39,7 +40,7 @@ private void writeResponse(HttpServletResponse response, SettingsConfiguration c
3940
String url = "http://" + addr.getHostAddress() + "/ui/index.php";
4041
String name = config.getName();
4142
boolean aframe = config.getOutputFormat() == OutputFormat.AFrame;
42-
response.setHeader("Location", url + "?aframe=" + Boolean.toString(aframe) + "&model=" + name
43+
response.setHeader("Location", url + "?aframe=" + aframe + "&model=" + name
4344
+ "&setup=web_a-frame/default" + "&srcDir=data-gen");
4445
}
4546
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package org.getaviz.generator;
2+
3+
public interface Metaphor {
4+
5+
void generate();
6+
7+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package org.getaviz.generator;
2+
3+
import org.getaviz.generator.city.CityMetaphor;
4+
import org.getaviz.generator.rd.RDMetaphor;
5+
6+
public class MetaphorFactory {
7+
8+
public static Metaphor createMetaphor(SettingsConfiguration config) {
9+
if( config.getMetaphor() == SettingsConfiguration.Metaphor.RD) {
10+
return new RDMetaphor(config);
11+
} else {
12+
return new CityMetaphor(config);
13+
}
14+
}
15+
}

generator2/org.getaviz.generator/src/main/java/org/getaviz/generator/OutputFormatHelper.java

Lines changed: 0 additions & 179 deletions
This file was deleted.

0 commit comments

Comments
 (0)