src/jdk.jfr/share/classes/jdk/jfr/consumer/EventParser.java
branchJEP-349-branch
changeset 57690 9316d02dd4a5
parent 57470 025c9b8eaefd
child 57922 6598f2825b1f
equal deleted inserted replaced
57641:5fb8ececb9e6 57690:9316d02dd4a5
    53     private boolean enabled = true;
    53     private boolean enabled = true;
    54     private RecordedEvent[] eventCache;
    54     private RecordedEvent[] eventCache;
    55     private int index;
    55     private int index;
    56     private boolean ordered;
    56     private boolean ordered;
    57     private long firstNanos;
    57     private long firstNanos;
       
    58     private long lastNanos = Long.MAX_VALUE;
    58     private long thresholdNanos = -1;
    59     private long thresholdNanos = -1;
    59 
    60 
    60     EventParser(TimeConverter timeConverter, EventType type, Parser[] parsers) {
    61     EventParser(TimeConverter timeConverter, EventType type, Parser[] parsers) {
    61         this.timeConverter = timeConverter;
    62         this.timeConverter = timeConverter;
    62         this.parsers = parsers;
    63         this.parsers = parsers;
   118                     return null;
   119                     return null;
   119                 }
   120                 }
   120             }
   121             }
   121             endTicks += durationTicks;
   122             endTicks += durationTicks;
   122         }
   123         }
   123         if (firstNanos > 0L) {
   124         if (firstNanos != 0L || lastNanos != Long.MAX_VALUE) {
   124             if (timeConverter.convertTimestamp(endTicks) < firstNanos) {
   125             long eventEnd = timeConverter.convertTimestamp(endTicks);
       
   126             if (eventEnd < firstNanos) {
       
   127                 return null;
       
   128             }
       
   129             if (eventEnd > lastNanos) {
   125                 return null;
   130                 return null;
   126             }
   131             }
   127         }
   132         }
   128 
   133 
   129         if (eventCache != null) {
   134         if (eventCache != null) {
   171 
   176 
   172     public void setFirstNanos(long firstNanos) {
   177     public void setFirstNanos(long firstNanos) {
   173         this.firstNanos = firstNanos;
   178         this.firstNanos = firstNanos;
   174     }
   179     }
   175 
   180 
       
   181     public void setLastNanos(long lastNanos) {
       
   182         this.lastNanos = lastNanos;
       
   183     }
       
   184 
   176     public void setOrdered(boolean ordered) {
   185     public void setOrdered(boolean ordered) {
   177         if (this.ordered == ordered) {
   186         if (this.ordered == ordered) {
   178             return;
   187             return;
   179         }
   188         }
   180         this.ordered = ordered;
   189         this.ordered = ordered;
   181         this.index = 0;
   190         this.index = 0;
   182     }
   191     }
       
   192 
   183 }
   193 }