try
{
if (id.equals(""))
{
// Create a new metadata schema
MetadataSchema schema = new MetadataSchema();
schema.setNamespace(request.getParameter("namespace"));
schema.setName(request.getParameter("short_name"));
schema.create(context);
showSchemas(context, request, response);
context.complete();
}
else
{
// Update an existing schema
MetadataSchema schema = MetadataSchema.find(context,
UIUtil.getIntParameter(request, "dc_schema_id"));
schema.setNamespace(request.getParameter("namespace"));
schema.setName(request.getParameter("short_name"));
schema.update(context);
showSchemas(context, request, response);
context.complete();
}
}
catch (NonUniqueMetadataException e)
{
request.setAttribute("error",
"Please make the namespace and short name unique.");
showSchemas(context, request, response);
context.abort();
return;
}
}
else if (button.equals("submit_delete"))
{
// Start delete process - go through verification step
MetadataSchema schema = MetadataSchema.find(context, UIUtil
.getIntParameter(request, "dc_schema_id"));
request.setAttribute("schema", schema);
JSPManager.showJSP(request, response,
"/dspace-admin/confirm-delete-mdschema.jsp");
}
else if (button.equals("submit_confirm_delete"))
{
// User confirms deletion of type
MetadataSchema dc = MetadataSchema.find(context, UIUtil
.getIntParameter(request, "dc_schema_id"));
dc.delete(context);
showSchemas(context, request, response);
context.complete();
}
else
{