Changeset 852:5a74670b3de6


Ignore:
Timestamp:
02/06/12 10:06:08 (4 months ago)
Author:
delmitz@delmitz-PC.office.nchovy.net
Branch:
default
Message:

modified script argument parser.

Location:
kraken-core/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • kraken-core/src/main/java/org/krakenapps/console/ScriptArgumentParser.java

    r831 r852  
    55 
    66public class ScriptArgumentParser { 
    7  
    87        public static String[] tokenize(String line) { 
    98                StringBuilder sb = new StringBuilder(); 
     
    3635                                        escape = false; 
    3736                                        sb.append(c); 
    38                                 } else 
     37                                } else { 
    3938                                        quoteOpen = !quoteOpen; 
     39                                        if (!quoteOpen) { 
     40                                                args.add(sb.toString()); 
     41                                                sb = new StringBuilder(); 
     42                                        } 
     43                                } 
    4044                                continue; 
    4145                        } 
     
    6165                        args.add(sb.toString()); 
    6266 
    63                 String[] s = new String[args.size()]; 
    64                 i = 0; 
    65                 for (String arg : args) 
    66                         s[i++] = arg; 
    67                 return s; 
     67                return args.toArray(new String[0]); 
    6868        } 
    6969} 
  • kraken-core/src/test/java/org/krakenapps/console/ScriptArgumentParserTest.java

    r831 r852  
    4444                assertEquals(1, tokenized.length); 
    4545                assertEquals("  space world   ", tokenized[0]); 
     46                 
     47                String haystack5 = "\" \""; 
     48                System.out.println("test5: " + haystack5); 
     49                tokenized = ScriptArgumentParser.tokenize(haystack5); 
     50                 
     51                assertEquals(1, tokenized.length); 
     52                assertEquals(" ", tokenized[0]); 
     53                 
    4654        } 
    4755} 
Note: See TracChangeset for help on using the changeset viewer.