Skip to content

Commit 8d17f65

Browse files
committed
Add analytis a configurable module and can be enabled by passing parameter like '-a'
1 parent 713f790 commit 8d17f65

File tree

6 files changed

+60
-5
lines changed

6 files changed

+60
-5
lines changed

src/main/java/org/eugene/App.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package org.eugene;
22

33
import javafx.application.Application;
4+
import org.apache.commons.cli.*;
5+
import org.eugene.config.Config;
46

57
/**
68
* Hello big data!
@@ -9,6 +11,26 @@
911
public class App
1012
{
1113
public static void main(String[] args) {
14+
Options options = new Options();
15+
16+
Option analytics = new Option("a","analytics",false,"Enable analytics");
17+
analytics.setRequired(false);
18+
options.addOption(analytics);
19+
20+
CommandLineParser parser = new PosixParser();
21+
HelpFormatter formatter = new HelpFormatter();
22+
CommandLine cmd = null;
23+
24+
try{
25+
cmd = parser.parse(options,args);
26+
}catch(ParseException e){
27+
System.out.println(e.getMessage());
28+
formatter.printHelp("utility-name",options);
29+
System.exit(1);
30+
}
31+
32+
boolean enableAnalytics=(cmd.hasOption("analytics")||cmd.hasOption("a"));
33+
Config.getInstance().setAnalytics(enableAnalytics);
1234
Application.launch(FXApplication.class, args);
1335
}
1436
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package org.eugene.config;
2+
3+
public class Config{
4+
private Config(){
5+
}
6+
7+
private static Config instance;
8+
private boolean statistics;
9+
10+
public static Config getInstance(){
11+
if(instance==null){
12+
instance = new Config();
13+
}
14+
return instance;
15+
}
16+
17+
public boolean enableAnalytics(){
18+
return statistics;
19+
}
20+
21+
public void setAnalytics(boolean statistics){
22+
this.statistics = statistics;
23+
}
24+
}

src/main/java/org/eugene/controller/DataParser.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import org.apache.avro.Schema;
44
import org.apache.hadoop.fs.Path;
5+
import org.eugene.config.Config;
56
import org.eugene.model.CommonData;
67
import org.eugene.model.TableMeta;
78
import org.eugene.persistent.PhysicalDB;
@@ -29,7 +30,9 @@ void persistData(Schema schema, Map<String, String> columnToType, List<List<Stri
2930
VirtualDB.getInstance().setCommonData(commonData);
3031
VirtualDB.getInstance().setTableMeta(tableMeta);
3132

32-
PhysicalDB.getInstance().persist(commonData);
33+
if(Config.getInstance().enableAnalytics()){
34+
PhysicalDB.getInstance().persist(commonData);
35+
}
3336
}
3437
private String getName(Path path){
3538
String regex = ".*[\\/|\\\\]([\\w]+)[.]?";

src/main/java/org/eugene/core/orc/ORCReader.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import org.apache.hadoop.hive.ql.io.orc.RecordReader;
77
import org.apache.hadoop.hive.serde2.objectinspector.StructField;
88
import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector;
9+
import org.eugene.config.Config;
910
import org.eugene.model.CommonData;
1011
import org.eugene.model.TableMeta;
1112
import org.eugene.persistent.PhysicalDB;
@@ -67,7 +68,9 @@ public boolean read(Path path){
6768
tableMeta.setRow(data.size());
6869
VirtualDB.getInstance().setCommonData(commonData);
6970
VirtualDB.getInstance().setTableMeta(tableMeta);
70-
PhysicalDB.getInstance().persist(commonData);
71+
if(Config.getInstance().enableAnalytics()){
72+
PhysicalDB.getInstance().persist(commonData);
73+
}
7174
return true;
7275
}catch(Exception e){
7376
e.printStackTrace();

src/main/java/org/eugene/persistent/PhysicalDB.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static PhysicalDB getInstance(){
2424
public boolean persist(CommonData commonData){
2525
this.commonData = commonData;
2626
sqlliteWrapper.persistData(commonData);
27-
return false;
27+
return true;
2828
}
2929

3030
public void updateLocation(String path){

src/main/java/org/eugene/ui/Dashboard.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import javafx.scene.text.Font;
1313
import javafx.scene.text.FontWeight;
1414
import javafx.stage.Stage;
15+
import org.eugene.config.Config;
1516
import org.eugene.persistent.SqlliteWrapper;
1617
import org.eugene.persistent.VirtualDB;
1718

@@ -38,8 +39,10 @@ public void refresh(String schema, String path, int rowNumber, int columnNumber,
3839
accordion = new Accordion();
3940
refreshSummaryPane(path, rowNumber, columnNumber, accordion);
4041
refreshMetaPane(schema, accordion);
41-
refreshAggregationPane(accordion, "", null, init);
42-
refreshProportionPane(accordion, "", null, init);
42+
if(Config.getInstance().enableAnalytics()){
43+
refreshAggregationPane(accordion, "", null, init);
44+
refreshProportionPane(accordion, "", null, init);
45+
}
4346
vBox.getChildren().add(accordion);
4447
}
4548

0 commit comments

Comments
 (0)