[VIVO-1851] - Add 'remove' option to named graph management page (#162)
* Add 'remove' option to named graph management page Resolves: https://jira.lyrasis.org/browse/VIVO-1851
This commit is contained in:
parent
6d30a0fcd4
commit
42c69ef04b
3 changed files with 24 additions and 6 deletions
|
@ -270,6 +270,7 @@ public class RDFUploadController extends JenaIngestController {
|
|||
String modelName = request.getParameter("modelName");
|
||||
String docLoc = request.getParameter("docLoc");
|
||||
String languageStr = request.getParameter("language");
|
||||
boolean remove = "remove".equals(request.getParameter("mode"));
|
||||
ModelMaker maker = getModelMaker(request);
|
||||
|
||||
String bodyJsp;
|
||||
|
@ -279,7 +280,7 @@ public class RDFUploadController extends JenaIngestController {
|
|||
} else {
|
||||
RDFService rdfService = getRDFService(request, maker, modelName);
|
||||
try {
|
||||
doLoadRDFData(modelName, docLoc, filePath, languageStr, rdfService);
|
||||
doLoadRDFData(modelName, docLoc, filePath, languageStr, rdfService, remove);
|
||||
} finally {
|
||||
rdfService.close();
|
||||
}
|
||||
|
@ -378,12 +379,19 @@ public class RDFUploadController extends JenaIngestController {
|
|||
String docLoc,
|
||||
String filePath,
|
||||
String language,
|
||||
RDFService rdfService) {
|
||||
RDFService rdfService,
|
||||
boolean remove) {
|
||||
try {
|
||||
if ( (docLoc != null) && (docLoc.length()>0) ) {
|
||||
URL docLocURL = new URL(docLoc);
|
||||
InputStream in = docLocURL.openStream();
|
||||
readIntoModel(in, language, rdfService, modelName);
|
||||
if(!remove) {
|
||||
readIntoModel(in, language, rdfService,
|
||||
modelName);
|
||||
} else {
|
||||
removeFromModel(in, language, rdfService,
|
||||
modelName);
|
||||
}
|
||||
} else if ( (filePath != null) && (filePath.length()>0) ) {
|
||||
File file = new File(filePath);
|
||||
File[] files;
|
||||
|
@ -396,8 +404,13 @@ public class RDFUploadController extends JenaIngestController {
|
|||
for (File currentFile : files) {
|
||||
log.debug("Reading file " + currentFile.getName());
|
||||
try {
|
||||
readIntoModel(fileStream.getInputStream(), language,
|
||||
rdfService, modelName);
|
||||
if(!remove) {
|
||||
readIntoModel(fileStream.getInputStream(), language, rdfService,
|
||||
modelName);
|
||||
} else {
|
||||
removeFromModel(fileStream.getInputStream(), language, rdfService,
|
||||
modelName);
|
||||
}
|
||||
fileStream.delete();
|
||||
} catch (IOException ioe) {
|
||||
String errMsg = "Error loading RDF from " +
|
||||
|
|
|
@ -56,7 +56,7 @@ function init(){
|
|||
<input type="hidden" name="action" value="loadRDFData"/>
|
||||
<input type="hidden" name="modelName" value="${modelName}"/>
|
||||
<input type="hidden" name="modelType" value="${modelType}"/>
|
||||
<input type="submit" name="submit" value="load RDF data"/>
|
||||
<input type="submit" name="submit" value="add/remove RDF data"/>
|
||||
</form>
|
||||
</td>
|
||||
<td>
|
||||
|
|
|
@ -15,6 +15,11 @@
|
|||
<p>Or upload a file from your computer:</p>
|
||||
<p><input type="file" name="filePath" /></p>
|
||||
|
||||
<ul style="list-style-type:none;">
|
||||
<li><input type="radio" name="mode" value="directAddABox" checked="checked"/>add RDF data</li>
|
||||
<li><input type="radio" name="mode" value="remove"/>remove RDF data</li>
|
||||
</ul>
|
||||
|
||||
<select name="language">
|
||||
<option value="RDF/XML">RDF/XML</option>
|
||||
<option value="N3">N3</option>
|
||||
|
|
Loading…
Add table
Reference in a new issue