Changeset 1339 for trunk/autoquest-plugin-html/src/main/java/de/ugoe/cs/autoquest/plugin/html/commands/CMDparseHTML.java
- Timestamp:
- 01/28/14 16:08:11 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/autoquest-plugin-html/src/main/java/de/ugoe/cs/autoquest/plugin/html/commands/CMDparseHTML.java
r1179 r1339 16 16 17 17 import java.util.Collection; 18 import java.util.HashMap; 19 import java.util.LinkedList; 18 20 import java.util.List; 21 import java.util.Map; 22 import java.util.regex.Matcher; 23 import java.util.regex.Pattern; 19 24 20 25 import de.ugoe.cs.autoquest.CommandHelpers; … … 43 48 @Override 44 49 public void run(List<Object> parameters) { 45 String filename; 46 String sequencesName = "sequences"; 50 String filename = null; 51 String sequencesName = null; 52 Map<String, List<String>> parseParams = new HashMap<String, List<String>>(); 47 53 48 54 try { 49 filename = (String) parameters.get(0); 50 if (parameters.size() >= 2) { 51 sequencesName = (String) parameters.get(1); 55 for (int i = 0; i < parameters.size(); i++) { 56 String param = (String) parameters.get(i); 57 if (!param.startsWith("-")) { 58 if (filename == null) { 59 filename = param; 60 } 61 else if (sequencesName == null) { 62 sequencesName = param; 63 } 64 } 65 else { 66 Pattern parseParamPattern = Pattern.compile("-(\\w*)=([\\w=\\[\\]\\(\\)/]*)"); 67 Matcher matcher = parseParamPattern.matcher(param); 68 69 if (matcher.matches()) { 70 String key = matcher.group(1); 71 List<String> values = parseParams.get(key); 72 73 if (values == null) { 74 values = new LinkedList<String>(); 75 parseParams.put(key, values); 76 } 77 78 values.add(matcher.group(2)); 79 } 80 else { 81 String message = "parse parameter does not follow format: -<key>=<value>"; 82 Console.printerrln(message); 83 throw new IllegalArgumentException(message); 84 } 85 } 52 86 } 53 87 } 54 88 catch (Exception e) { 55 throw new IllegalArgumentException( );89 throw new IllegalArgumentException("illegal parameters provided: " + e); 56 90 } 57 91 58 HTMLLogParser parser = new HTMLLogParser(); 92 if (sequencesName == null) { 93 sequencesName = "sequences"; 94 } 95 96 HTMLLogParser parser = new HTMLLogParser(parseParams); 59 97 60 98 try {
Note: See TracChangeset
for help on using the changeset viewer.