src/jdk.jfr/share/classes/jdk/jfr/internal/MetadataRepository.java
branchJEP-349-branch
changeset 57470 025c9b8eaefd
parent 57459 df39f8d8f4d6
child 57946 b77540d274f9
equal deleted inserted replaced
57467:de154169948b 57470:025c9b8eaefd
   208             c.disable();
   208             c.disable();
   209         }
   209         }
   210     }
   210     }
   211 
   211 
   212     public synchronized List<EventControl> getEventControls() {
   212     public synchronized List<EventControl> getEventControls() {
   213         List<EventControl> controls = new ArrayList<>();
   213         List<Class<? extends jdk.internal.event.Event>> eventClasses = jvm.getAllEventClasses();
       
   214         ArrayList<EventControl> controls = new ArrayList<>(eventClasses.size() + nativeControls.size());
   214         controls.addAll(nativeControls);
   215         controls.addAll(nativeControls);
   215         for (EventHandler eh : getEventHandlers()) {
   216         for (Class<? extends jdk.internal.event.Event> clazz : eventClasses) {
   216             controls.add(eh.getEventControl());
   217             EventHandler eh = Utils.getHandler(clazz);
       
   218             if (eh != null) {
       
   219                 controls.add(eh.getEventControl());
       
   220             }
   217         }
   221         }
   218         return controls;
   222         return controls;
   219     }
   223     }
   220 
   224 
   221     private void storeDescriptorInJVM() throws InternalError {
   225     private void storeDescriptorInJVM() throws InternalError {
   317         if (flushCounter == Short.MAX_VALUE) {
   321         if (flushCounter == Short.MAX_VALUE) {
   318             flushCounter = 0;
   322             flushCounter = 0;
   319         }
   323         }
   320         this.flushMetadata = false;
   324         this.flushMetadata = false;
   321     }
   325     }
       
   326 
       
   327 
       
   328 
       
   329 
   322 }
   330 }