Timestamped filename for named graph output
This commit is contained in:
parent
ebc9237cc6
commit
3cd323bfb1
1 changed files with 6 additions and 1 deletions
|
@ -17,6 +17,7 @@ import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.net.URISyntaxException;
|
import java.net.URISyntaxException;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
@ -34,6 +35,7 @@ import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.utils.JSPPageHandler;
|
import edu.cornell.mannlib.vitro.webapp.utils.JSPPageHandler;
|
||||||
|
import org.apache.commons.io.FilenameUtils;
|
||||||
import org.apache.commons.lang3.StringEscapeUtils;
|
import org.apache.commons.lang3.StringEscapeUtils;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
@ -290,13 +292,16 @@ public class JenaIngestController extends BaseEditController {
|
||||||
private void processOutputModelRequest(VitroRequest vreq,
|
private void processOutputModelRequest(VitroRequest vreq,
|
||||||
HttpServletResponse response) {
|
HttpServletResponse response) {
|
||||||
String modelNameStr = vreq.getParameter("modelName");
|
String modelNameStr = vreq.getParameter("modelName");
|
||||||
|
DateTimeFormatter timeStampPattern = DateTimeFormatter.ofPattern("yyyy-MM-dd-HHmmss");
|
||||||
|
String fileName = FilenameUtils.getName(modelNameStr) + "-" + timeStampPattern.format(java.time.LocalDateTime.now());
|
||||||
Model model = getModel(modelNameStr,vreq);
|
Model model = getModel(modelNameStr,vreq);
|
||||||
JenaOutputUtils.setNameSpacePrefixes(model,vreq.getWebappDaoFactory());
|
JenaOutputUtils.setNameSpacePrefixes(model,vreq.getWebappDaoFactory());
|
||||||
model.enterCriticalSection(Lock.READ);
|
model.enterCriticalSection(Lock.READ);
|
||||||
try {
|
try {
|
||||||
OutputStream out = response.getOutputStream();
|
OutputStream out = response.getOutputStream();
|
||||||
response.setContentType("application/x-turtle");
|
response.setContentType("application/x-turtle");
|
||||||
//out.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n".getBytes());
|
response.setHeader("Content-Transfer-Encoding", "binary");
|
||||||
|
response.setHeader("Content-disposition", "attachment; filename=" + fileName + ".ttl");
|
||||||
model.write(out, "TTL");
|
model.write(out, "TTL");
|
||||||
out.flush();
|
out.flush();
|
||||||
out.close();
|
out.close();
|
||||||
|
|
Loading…
Add table
Reference in a new issue