docs: @SuppressWarnings("unchecked")
      public <EngineComponent> EngineComponent getEngineComponent(Class<EngineComponent> clazz) {
          String thisMethodName = "getEngineComponent";
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              SibTr.entry(tc, thisMethodName, clazz);
          }
  
          JsEngineComponent foundEngineComponent = null;
  
          // No need to synchronize on jmeComponents to prevent concurrent
          // modification from dynamic config and runtime callbacks, because
          // jmeComponents is now a CopyOnWriteArrayList.
          Iterator<ComponentList> vIter = jmeComponents.iterator();
  
          while (vIter.hasNext() && foundEngineComponent == null) {
              ComponentList c = vIter.next();
              if (clazz.isInstance(c.getRef())) {
                  foundEngineComponent = c.getRef();
              }
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              SibTr.exit(tc, thisMethodName, foundEngineComponent);
          }
  
          return (EngineComponent) foundEngineComponent;
      }