package com.psddev.cms.tool.page; import java.io.IOException; import java.util.Map; import java.util.UUID; import javax.servlet.ServletException; import com.psddev.cms.tool.PageServlet; import com.psddev.cms.tool.ToolPageContext; import com.psddev.dari.db.ObjectType; import com.psddev.dari.db.State; import com.psddev.dari.util.ObjectUtils; import com.psddev.dari.util.RoutingFilter; @RoutingFilter.Path(application = "cms", value = "contentFormFields") public class ContentFormFields extends PageServlet { private static final long serialVersionUID = 1L; @Override protected String getPermissionId() { return null; } @Override @SuppressWarnings("unchecked") protected void doService(ToolPageContext page) throws IOException, ServletException { UUID typeId = page.param(UUID.class, "typeId"); UUID id = page.param(UUID.class, "id"); String data = page.param(String.class, "data"); Object object = ObjectType.getInstance(typeId).createObject(id); State.getInstance(object).setResolveInvisible(true); if (data != null) { State.getInstance(object).putAll((Map<String, Object>) ObjectUtils.fromJson(data)); } page.writeFormFields(object); } }