package org.forgerock.openidm.script; import javax.script.Bindings; import org.forgerock.services.context.Context; import org.forgerock.json.resource.ActionRequest; import org.forgerock.json.resource.CreateRequest; import org.forgerock.json.resource.DeleteRequest; import org.forgerock.json.resource.PatchRequest; import org.forgerock.json.resource.QueryRequest; import org.forgerock.json.resource.ReadRequest; import org.forgerock.json.resource.ResourceException; import org.forgerock.json.resource.UpdateRequest; /** * A ScriptCustomizer allows an implementer to customize the script bindings per request. */ public interface ScriptCustomizer { void handleCreate(Context context, CreateRequest request, Bindings bindings) throws ResourceException; void handleRead(Context context, ReadRequest request, Bindings bindings) throws ResourceException; void handleUpdate(Context context, UpdateRequest request, Bindings bindings) throws ResourceException; void handleAction(Context context, ActionRequest request, Bindings bindings) throws ResourceException; void handleDelete(Context context, DeleteRequest request, Bindings bindings) throws ResourceException; void handlePatch(Context context, PatchRequest request, Bindings bindings) throws ResourceException; void handleQuery(Context context, QueryRequest request, Bindings bindings) throws ResourceException; }