package org.limewire.core.impl.updates; import org.limewire.core.api.updates.UpdateInformation; import org.limewire.inject.EagerSingleton; import org.limewire.listener.EventBroadcaster; import org.limewire.listener.EventListener; import com.google.inject.Inject; import com.limegroup.gnutella.version.UpdateEvent; import com.limegroup.gnutella.version.UpdateHandler; @EagerSingleton public class UpdateListener implements EventListener<UpdateEvent> { private final EventBroadcaster<org.limewire.core.api.updates.UpdateEvent> uiListeners; @Inject public UpdateListener(UpdateHandler updateHandler, EventBroadcaster<org.limewire.core.api.updates.UpdateEvent> listeners) { this.uiListeners = listeners; updateHandler.addListener(this); } @Override public void handleEvent(UpdateEvent event) { com.limegroup.gnutella.version.UpdateInformation eventData = event.getData(); UpdateInformation info = new UpdateInformationImpl(eventData.getButton1Text(), eventData.getButton2Text(), eventData.getUpdateCommand(), eventData.getUpdateText(), eventData.getUpdateTitle(), eventData.getUpdateURL()); uiListeners.broadcast(new org.limewire.core.api.updates.UpdateEvent(info, org.limewire.core.api.updates.UpdateEvent.Type.UPDATE)); } }