src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectContext.java
branchJEP-349-branch
changeset 58197 0ef79bd7fb5c
parent 58180 0a8943b4d0dd
child 58200 2d147d680311
equal deleted inserted replaced
58193:baf88aa4f5db 58197:0ef79bd7fb5c
    22  * or visit www.oracle.com if you need additional information or have any
    22  * or visit www.oracle.com if you need additional information or have any
    23  * questions.
    23  * questions.
    24  */
    24  */
    25 package jdk.jfr.internal.consumer;
    25 package jdk.jfr.internal.consumer;
    26 
    26 
       
    27 import java.time.ZoneId;
    27 import java.util.HashMap;
    28 import java.util.HashMap;
    28 import java.util.List;
    29 import java.util.List;
    29 import java.util.Map;
    30 import java.util.Map;
    30 
    31 
    31 import jdk.jfr.EventType;
    32 import jdk.jfr.EventType;
    32 import jdk.jfr.ValueDescriptor;
    33 import jdk.jfr.ValueDescriptor;
    33 
    34 
    34 public final class ObjectContext {
    35 public final class ObjectContext {
    35     private final Map<ValueDescriptor, ObjectContext> contextLookup;
    36     private final Map<ValueDescriptor, ObjectContext> contextLookup;
       
    37     private final TimeConverter timeConverter;
    36 
    38 
    37     public final EventType eventType;
    39     public final EventType eventType;
    38     public final List<ValueDescriptor> fields;
    40     public final List<ValueDescriptor> fields;
    39     public final TimeConverter timeConverter;
       
    40 
    41 
    41     public ObjectContext(EventType eventType, List<ValueDescriptor> fields, TimeConverter timeConverter) {
    42     ObjectContext(EventType eventType, List<ValueDescriptor> fields, TimeConverter timeConverter) {
    42         this.contextLookup = new HashMap<>();
    43         this.contextLookup = new HashMap<>();
    43         this.eventType = eventType;
    44         this.eventType = eventType;
    44         this.fields = fields;
    45         this.fields = fields;
    45         this.timeConverter = timeConverter;
    46         this.timeConverter = timeConverter;
    46     }
    47     }
    58             context = new ObjectContext(this, descriptor);
    59             context = new ObjectContext(this, descriptor);
    59             contextLookup.put(descriptor, context);
    60             contextLookup.put(descriptor, context);
    60         }
    61         }
    61         return context;
    62         return context;
    62     }
    63     }
       
    64 
       
    65     public long convertTimestamp(long ticks) {
       
    66         return timeConverter.convertTimestamp(ticks);
       
    67     }
       
    68 
       
    69     public long convertTimespan(long ticks) {
       
    70         return timeConverter.convertTimespan(ticks);
       
    71     }
       
    72 
       
    73     public ZoneId getZoneOffset() {
       
    74         return timeConverter.getZoneOffset();
       
    75     }
    63 }
    76 }