Skip to content

Commit 57e138b

Browse files
author
saharmehrpour
committed
updated the plugin to support reading un/weighted feature files
1 parent 2d7ec81 commit 57e138b

5 files changed

Lines changed: 31 additions & 5 deletions

File tree

.idea/workspace.xml

Lines changed: 9 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ActiveDocumentationPlugin.zip

747 Bytes
Binary file not shown.

src/MessageProcessor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class MessageProcessor {
1212
private static final String[] selectedFragmentKeys = {"filePath", "startOffset", "endOffset", "startLineOffset",
1313
"lineNumber", "lineText", "text"};
1414
private static final String[] doiInformationKeys = {"recentVisitedFiles", "recentSearches", "recentVisitedElements"};
15-
private static final String[] minedRulesKey = {"minedFrequentItemSets"};
15+
private static final String[] minedRulesKey = {"minedFrequentItemSets", "algorithm"};
1616
private static final String[] elementInfoForForMineRules = {"filePath", "startOffset", "startLineOffset",
1717
"lineNumber", "text"};
1818

src/MiningRulesProcessor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ void processReceivedMessages(JsonObject messageAsJson) {
116116
JsonObject outputContent = LearnDesignRules.analyzeDatabases(projectPath, params, this.directory, alg);
117117
// send message
118118
sendMessage(MessageProcessor.encodeData(new Object[]{WebSocketConstants.SEND_MINED_DESIGN_RULES,
119-
MessageProcessor.encodeMinedRules(new Object[]{outputContent})
119+
MessageProcessor.encodeMinedRules(new Object[]{outputContent, alg})
120120
}).toString());
121121
break;
122122
}

src/core/model/LearnDesignRules.java

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,19 @@
1212
import java.io.IOException;
1313
import java.nio.charset.StandardCharsets;
1414
import java.util.ArrayList;
15+
import java.util.HashMap;
1516
import java.util.List;
17+
import java.util.Map;
1618

1719
public class LearnDesignRules {
20+
21+
final static Map<String, String> filePrefix = new HashMap<String, String>() {{
22+
put("FPMax", "AttributeEncoding");
23+
put("FPClose", "AttributeEncoding");
24+
put("CHUI-Miner", "Weighted_AttributeEncoding");
25+
put("CHUI-MinerMax", "Weighted_AttributeEncoding");
26+
}};
27+
1828
public static JsonObject analyzeDatabases(String projectPath, JsonArray params, String directory, String algorithm) {
1929

2030
String path = projectPath.concat(directory);
@@ -28,14 +38,23 @@ public static JsonObject analyzeDatabases(String projectPath, JsonArray params,
2838
}
2939

3040
List<String> fileList = new ArrayList<>();
41+
List<File> outputFileList = new ArrayList<>();
3142
File[] listOfFiles = outputDirectory.listFiles();
3243
if (listOfFiles != null) {
3344
for (File lof : listOfFiles) {
34-
if (lof.isFile() && lof.getName().startsWith("AttributeEncoding")) {
45+
if (lof.isFile() && lof.getName().startsWith(filePrefix.get(algorithm))) {
3546
fileList.add(lof.getName());
3647
}
48+
else if (lof.isFile() && lof.getName().startsWith("output_")) {
49+
outputFileList.add(lof);
50+
}
3751
}
3852
}
53+
// delete output files to create new ones
54+
for (File file : outputFileList) {
55+
file.delete();
56+
}
57+
3958
List<String> paramString = new ArrayList<>();
4059
for (int i=0; i < params.size(); i++) {
4160
paramString.add(params.get(i).toString());

0 commit comments

Comments
 (0)