package org.ovirt.engine.ui.uicommonweb.models;
import java.util.Objects;
import com.google.gwt.event.shared.EventHandler;
import com.google.gwt.event.shared.GwtEvent;
import com.google.gwt.event.shared.HasHandlers;
import com.google.web.bindery.event.shared.HandlerRegistration;
public class MainModelSelectionChangeEvent extends GwtEvent<MainModelSelectionChangeEvent.MainModelSelectionChangeHandler> {
SearchableListModel<?, ? extends EntityModel<?>> mainModel;
protected MainModelSelectionChangeEvent() {
// Possibly for serialization.
}
public MainModelSelectionChangeEvent(SearchableListModel<?, ? extends EntityModel<?>> mainModel) {
this.mainModel = mainModel;
}
public static void fire(HasHandlers source, SearchableListModel<?, ? extends EntityModel<?>> mainModel) {
MainModelSelectionChangeEvent eventInstance = new MainModelSelectionChangeEvent(mainModel);
source.fireEvent(eventInstance);
}
public static void fire(HasHandlers source, MainModelSelectionChangeEvent eventInstance) {
source.fireEvent(eventInstance);
}
public interface HasMainModelSelectionChangeHandlers extends HasHandlers {
HandlerRegistration addMainModelSelectionChangeHandler(MainModelSelectionChangeHandler handler);
}
public interface MainModelSelectionChangeHandler extends EventHandler {
public void onMainModelSelectionChange(MainModelSelectionChangeEvent event);
}
private static final Type<MainModelSelectionChangeHandler> TYPE = new Type<>();
public static Type<MainModelSelectionChangeHandler> getType() {
return TYPE;
}
@Override
public Type<MainModelSelectionChangeHandler> getAssociatedType() {
return TYPE;
}
@Override
protected void dispatch(MainModelSelectionChangeHandler handler) {
handler.onMainModelSelectionChange(this);
}
public SearchableListModel<?, ? extends EntityModel<?>> getMainModel() {
return mainModel;
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof MainModelSelectionChangeEvent)) {
return false;
}
MainModelSelectionChangeEvent other = (MainModelSelectionChangeEvent) obj;
return Objects.equals(mainModel, other.mainModel);
}
@Override
public int hashCode() {
return Objects.hashCode(mainModel);
}
@Override
public String toString() {
return "MainModelSelectionChangeEvent[" //$NON-NLS-1$
+ mainModel
+ "]"; //$NON-NLS-1$
}
}