@@ -0,0 +1,1495 @@
+// Licensed to the Software Freedom Conservancy (SFC) under one%0A// or more contributor license agreements.  See the NOTICE file%0A// distributed with this work for additional information%0A// regarding copyright ownership.  The SFC licenses this file%0A// to you under the Apache License, Version 2.0 (the%0A// %22License%22); you may not use this file except in compliance%0A// with the License.  You may obtain a copy of the License at%0A//%0A//   http://www.apache.org/licenses/LICENSE-2.0%0A//%0A// Unless required by applicable law or agreed to in writing,%0A// software distributed under the License is distributed on an%0A// %22AS IS%22 BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY%0A// KIND, either express or implied.  See the License for the%0A// specific language governing permissions and limitations%0A// under the License.%0A%0Apackage org.openqa.selenium.grid.data;%0A%0Aimport org.openqa.selenium.events.Event;%0Aimport org.openqa.selenium.events.EventListener;%0Aimport org.openqa.selenium.events.EventName;%0Aimport org.openqa.selenium.internal.Require;%0A%0Aimport java.util.function.Consumer;%0A%0Apublic class NodeRemovedEvent extends Event %7B%0A%0A  private static final EventName NODE_REMOVED_EVENT = new EventName(%22node-removed%22);%0A%0A  public NodeRemovedEvent(NodeStatus nodes) %7B%0A    super(NODE_REMOVED_EVENT, nodes);%0A  %7D%0A%0A  public static EventListener%3CNodeStatus%3E listener(Consumer%3CNodeStatus%3E handler) %7B%0A    Require.nonNull(%22Handler%22, handler);%0A%0A    return new EventListener%3C%3E(NODE_REMOVED_EVENT, NodeStatus.class , handler);%0A  %7D%0A%7D%0A

Add Node removed event