package com.guit.client.place.event;
import com.google.gwt.event.shared.GwtEvent;
public class PlaceChangeEvent extends GwtEvent<PlaceChangeHandler> {
private static Type<PlaceChangeHandler> type;
public static Type<PlaceChangeHandler> getType() {
return type != null ? type : (type = new Type<PlaceChangeHandler>());
}
private final Class<?> placeClass;
private final Object placeData;
public PlaceChangeEvent(Class<?> placeClass, Object placeData) {
this.placeClass = placeClass;
this.placeData = placeData;
}
@Override
protected void dispatch(PlaceChangeHandler handler) {
handler.onPlaceChange(this);
}
@Override
public Type<PlaceChangeHandler> getAssociatedType() {
return getType();
}
public Class<?> getPlaceClass() {
return placeClass;
}
public Object getPlaceData() {
return placeData;
}
@Override
public String toDebugString() {
return super.toDebugString() + toString();
}
@Override
public String toString() {
return "[placeClass=" + placeClass + ", placeData=" + placeData + "]";
}
}