equal
deleted
inserted
replaced
66 static final ValueDescriptor STACK_TRACE_FIELD = createStackTraceField(); |
66 static final ValueDescriptor STACK_TRACE_FIELD = createStackTraceField(); |
67 static final ValueDescriptor START_TIME_FIELD = createStartTimeField(); |
67 static final ValueDescriptor START_TIME_FIELD = createStartTimeField(); |
68 |
68 |
69 private TypeLibrary(List<Type> jvmTypes) { |
69 private TypeLibrary(List<Type> jvmTypes) { |
70 visitReachable(jvmTypes, t -> !types.containsKey(t.getId()), t -> types.put(t.getId(), t)); |
70 visitReachable(jvmTypes, t -> !types.containsKey(t.getId()), t -> types.put(t.getId(), t)); |
71 if (LogTag.JFR_SYSTEM_METADATA.shouldLog(LogLevel.INFO.level)) { |
71 if (Logger.shouldLog(LogTag.JFR_SYSTEM_METADATA, LogLevel.INFO)) { |
72 Stream<Type> s = types.values().stream().sorted((x, y) -> Long.compare(x.getId(), y.getId())); |
72 Stream<Type> s = types.values().stream().sorted((x, y) -> Long.compare(x.getId(), y.getId())); |
73 s.forEach(t -> t.log("Added", LogTag.JFR_SYSTEM_METADATA, LogLevel.INFO)); |
73 s.forEach(t -> t.log("Added", LogTag.JFR_SYSTEM_METADATA, LogLevel.INFO)); |
74 } |
74 } |
75 } |
75 } |
76 |
76 |
420 visitReachable(registered, t -> t.getRemove(), t -> t.setRemove(false)); |
420 visitReachable(registered, t -> t.getRemove(), t -> t.setRemove(false)); |
421 List<Long> removeIds = new ArrayList<>(); |
421 List<Long> removeIds = new ArrayList<>(); |
422 for (Type type : types.values()) { |
422 for (Type type : types.values()) { |
423 if (type.getRemove() && !Type.isDefinedByJVM(type.getId())) { |
423 if (type.getRemove() && !Type.isDefinedByJVM(type.getId())) { |
424 removeIds.add(type.getId()); |
424 removeIds.add(type.getId()); |
425 if (LogTag.JFR_METADATA.shouldLog(LogLevel.TRACE.level)) { |
425 if (Logger.shouldLog(LogTag.JFR_METADATA, LogLevel.TRACE)) { |
426 Logger.log(LogTag.JFR_METADATA, LogLevel.TRACE, "Removed obsolete metadata " + type.getName()); |
426 Logger.log(LogTag.JFR_METADATA, LogLevel.TRACE, "Removed obsolete metadata " + type.getName()); |
427 } |
427 } |
428 } |
428 } |
429 // Optimization, set to true now to avoid iterating |
429 // Optimization, set to true now to avoid iterating |
430 // types first thing at next call to clearUnregistered |
430 // types first thing at next call to clearUnregistered |