package de.axone.web.rest;
import java.io.PrintWriter;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import de.axone.web.Method;
import de.axone.web.SuperURL;
public interface CrudFunction<ID, DATA, REQUEST extends RestRequest>
extends RestFunctionGroup<DATA, REQUEST> {
@Override
public String name();
public ID parseId( DATA data, Method method, String id, Map<String,String> parameters, REQUEST req ) throws Exception;
public void doCreate( DATA data, Method method, Map<String,String> parameters,
PrintWriter out, REQUEST req, HttpServletResponse resp) throws Exception;
public void doRead( DATA data, Method method, ID id, Map<String,String> parameters,
PrintWriter out, REQUEST req, HttpServletResponse resp) throws Exception;
public void doUpdate( DATA data, Method method, ID id, Map<String,String> parameters,
PrintWriter out, REQUEST req, HttpServletResponse resp) throws Exception;
public void doDelete( DATA data, Method method, ID id, Map<String,String> parameters,
PrintWriter out, REQUEST req, HttpServletResponse resp) throws Exception;
public void doList( DATA data, Method method, Map<String,String> parameters,
PrintWriter out, REQUEST req, HttpServletResponse resp) throws Exception;
public void doConfig( DATA data, Method method, Map<String,String> parameters,
PrintWriter out, REQUEST req, HttpServletResponse resp) throws Exception;
public void doOther( DATA data, Method method, Map<String, String> parameters,
SuperURL url, PrintWriter out, REQUEST req, HttpServletResponse resp ) throws Exception;
public void doHelp( DATA data, Method method, Map<String, String> parameters,
SuperURL url, PrintWriter out, REQUEST req, HttpServletResponse resp ) throws Exception;
public void registerMe( RestFunctionRegistry<DATA,REQUEST> reg );
}