MVP GWT, Place . URL- #. , Gmail.
, gwt-presenter, DataPresenter DataPlace:
public class DataPlace extends ProvidedPresenterPlace<DataPresenter> {
@Inject
public DataPlace(Provider<DataPresenter> presenter) {
super(presenter);
}
@Override
public String getName() {
return "data";
}
@Override
protected void preparePresenter( PlaceRequest request, DataPresenter presenter ) {
String state = request.getParameter("state", null);
if (state != null) {
presenter.setState(State.valueOf(state));
}
}
@Override
protected PlaceRequest prepareRequest( PlaceRequest request, DataPresenter presenter ) {
return request.with("state", presenter.getState().toString());
}
}
URL- / # state = 12345, Place Presenter . Presenter. Place, .