Ignore:
Timestamp:
03/19/12 11:20:20 (13 years ago)
Author:
sherbold
Message:
  • fixed bug that disallowed to generate sequences of a predefined maxLength and a valid end with the command generateHybrid if the generated sequence is finished through a random walk (same bug as fixed with previous commit due to code duplication)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/EventBenchConsole/src/de/ugoe/cs/eventbench/commands/CMDgenerateHybrid.java

    r394 r401  
    106106                        } 
    107107                        List<? extends Event<?>> seqTmp = seqsTmp.get(index); 
    108                         if (seqTmp.get(seqTmp.size() - 1) != Event.ENDEVENT) { 
     108                        if (!Event.ENDEVENT.equals(seqTmp.get(seqTmp.size() - 1))) { 
    109109                                List<? extends Event<?>> sequence; 
    110110                                if (validEnd) { 
     
    133133                while (!endFound) { 
    134134                        sequenceCopy = new LinkedList<Event<?>>(sequence); 
    135                         while (!endFound && sequenceCopy.size() < maxLength) { 
     135                        while (!endFound && sequenceCopy.size() <= maxLength) { 
    136136                                double randVal = r.nextDouble(); 
    137137                                double probSum = 0.0; 
     
    139139                                        probSum += model.getProbability(sequenceCopy, symbol); 
    140140                                        if (probSum >= randVal) { 
    141                                                 if (!(symbol == Event.STARTEVENT || symbol == Event.ENDEVENT)) { 
     141                                                if (!(Event.STARTEVENT.equals(symbol) || Event.ENDEVENT.equals(symbol))) { 
    142142                                                        // only add the symbol the sequence if it is not 
    143143                                                        // START 
     
    145145                                                        sequenceCopy.add(symbol); 
    146146                                                } 
    147                                                 endFound = (symbol == Event.ENDEVENT) 
     147                                                endFound = Event.ENDEVENT.equals(symbol) 
    148148                                                                || (!validEnd && sequenceCopy.size() == maxLength); 
    149149                                                break; 
Note: See TracChangeset for help on using the changeset viewer.