2013-03-22 20:51:22 +01:00
|
|
|
package com.commafeed.frontend.rest;
|
2013-03-21 16:22:58 +01:00
|
|
|
|
|
|
|
|
import org.apache.wicket.markup.html.WebPage;
|
|
|
|
|
import org.apache.wicket.request.handler.TextRequestHandler;
|
|
|
|
|
import org.apache.wicket.request.mapper.parameter.PageParameters;
|
|
|
|
|
|
2013-03-22 20:51:22 +01:00
|
|
|
import com.commafeed.frontend.CommaFeedSession;
|
|
|
|
|
import com.commafeed.model.User;
|
2013-03-21 16:22:58 +01:00
|
|
|
import com.google.gson.Gson;
|
2013-03-22 22:11:40 +01:00
|
|
|
import com.google.gson.GsonBuilder;
|
2013-03-21 16:22:58 +01:00
|
|
|
|
|
|
|
|
@SuppressWarnings("serial")
|
|
|
|
|
public abstract class JSONPage extends WebPage {
|
|
|
|
|
|
|
|
|
|
public JSONPage(PageParameters pageParameters) {
|
2013-03-22 22:11:40 +01:00
|
|
|
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
|
2013-03-21 16:22:58 +01:00
|
|
|
getRequestCycle().scheduleRequestHandlerAfterCurrent(
|
2013-03-22 22:11:40 +01:00
|
|
|
new TextRequestHandler("application/json", "UTF-8", gson
|
2013-03-22 20:51:22 +01:00
|
|
|
.toJson(getObject(pageParameters))));
|
2013-03-21 16:22:58 +01:00
|
|
|
}
|
|
|
|
|
|
2013-03-22 20:51:22 +01:00
|
|
|
protected abstract Object getObject(PageParameters parameters);
|
2013-03-21 16:22:58 +01:00
|
|
|
|
2013-03-22 20:51:22 +01:00
|
|
|
protected User getUser() {
|
|
|
|
|
return CommaFeedSession.get().getUser();
|
|
|
|
|
}
|
2013-03-21 16:22:58 +01:00
|
|
|
}
|