ui/src/main/java/org/apache/hop/ui/core/bus/HopGuiEventsHandler.java
public void removeEventListener(String guiId, String... eventIds) {
    if (StringUtils.isEmpty(guiId)) {
      throw new RuntimeException(
          "Please provide a GUI ID of the component you're done with being informed about.");
    }
    if (eventIds == null || eventIds.length == 0) {
      throw new RuntimeException("Please provide the event IDs of the listeners to remove.");
    }
    for (String eventId : eventIds) {
      if (StringUtils.isEmpty(eventId)) {
        throw new RuntimeException("Please only use event IDs which are not null or empty");
      }
    }

    // This gives us the map for the GUI component
    //
    Map<String, IHopGuiEventListener> eventListenerMap = guiEventListenerMap.get(guiId);
    if (eventListenerMap == null) {
      return; // nothing to remove
    }

    // Add the listener to all the event IDs
    //
    for (String eventId : eventIds) {
      eventListenerMap.remove(eventId);
    }

    // If the map is empty, remove it to reduce leakage
    //
    if (eventListenerMap.isEmpty()) {
      guiEventListenerMap.remove(guiId);
    }
  }
/**
   * Remove the event listeners for the given GUI ID and event IDs
   *
   * @param guiId
   * @param eventIds
   */
Remove the event listeners for the given GUI ID and event IDs
@param guiId
@param eventIds
Remove the event listeners for the given GUI ID and event IDs @param guiId @param eventIds
public void removeEventListener(String guiId, String... eventIds) {
    if (StringUtils.isEmpty(guiId)) {
      throw new RuntimeException(
          "Please provide a GUI ID of the component you're done with being informed about.");
    }
    if (eventIds == null || eventIds.length == 0) {
      throw new RuntimeException("Please provide the event IDs of the listeners to remove.");
    }
    for (String eventId : eventIds) {
      if (StringUtils.isEmpty(eventId)) {
        throw new RuntimeException("Please only use event IDs which are not null or empty");
      }
    }
    Map<String, IHopGuiEventListener> eventListenerMap = guiEventListenerMap.get(guiId);
    if (eventListenerMap == null) {
      return;  nothing to remove
    }
     Add the listener to all the event IDs
    for (String eventId : eventIds) {
      eventListenerMap.remove(eventId);
    }
     If the map is empty, remove it to reduce leakage
    if (eventListenerMap.isEmpty()) {
      guiEventListenerMap.remove(guiId);
    }
  }
public void removeEventListener ( String guiId , String ... eventIds ) { if ( StringUtils . isEmpty ( guiId ) ) { throw new RuntimeException ( "Please provide a GUI ID of the component you're done with being informed about." ) ; } if ( eventIds == null || eventIds . length == 0 ) { throw new RuntimeException ( "Please provide the event IDs of the listeners to remove." ) ; } for ( String eventId : eventIds ) { if ( StringUtils . isEmpty ( eventId ) ) { throw new RuntimeException ( "Please only use event IDs which are not null or empty" ) ; } } Map < String , IHopGuiEventListener > eventListenerMap = guiEventListenerMap . get ( guiId ) ; if ( eventListenerMap == null ) { return ; } for ( String eventId : eventIds ) { eventListenerMap . remove ( eventId ) ; } if ( eventListenerMap . isEmpty ( ) ) { guiEventListenerMap . remove ( guiId ) ; } }
Remove the event listeners for the given GUI ID and event IDs
 @param guiId
 @param eventIds
Remove the event listeners for the given GUI ID and event IDs @param guiId @param eventIds
// This gives us the map for the GUI component // // nothing to remove // Add the listener to all the event IDs // // If the map is empty, remove it to reduce leakage //