package de.twenty11.skysail.server.ext.bookmarks.resources; import java.util.List; import org.restlet.data.Form; import org.restlet.resource.Get; import de.twenty11.skysail.common.responses.FormResponse; import de.twenty11.skysail.common.responses.SkysailResponse; import de.twenty11.skysail.server.core.restlet.AddServerResource2; import de.twenty11.skysail.server.ext.bookmarks.BookmarkApplication; import de.twenty11.skysail.server.ext.bookmarks.domain.Bookmark; import de.twenty11.skysail.server.ext.bookmarks.domain.Folder; public class AddFolderResource extends AddServerResource2<Folder> { @Override @Get("html") public FormResponse<Folder> createForm() { FormResponse<Folder> formResponse = new FormResponse<Folder>(new Folder()); formResponse.setMessage("Add a new folder"); return formResponse; } @Override public Folder getData(Form form) { return new Folder(form.getFirstValue("name"), null); } @Override public SkysailResponse<List<Bookmark>> addEntity(Folder entity) { BookmarkApplication app = (BookmarkApplication) getApplication(); app.getFolderRepository().add(entity); return new BookmarksResource(this).getEntities(); } }