Skip to content

Commit

Permalink
Merge pull request #289 from edoweb/EDOZWO-931
Browse files Browse the repository at this point in the history
Edozwo 931
  • Loading branch information
inkuss authored Jun 26, 2019
2 parents 00f37b7 + 4dc9a77 commit 0f9f282
Show file tree
Hide file tree
Showing 12 changed files with 521 additions and 31 deletions.
5 changes: 5 additions & 0 deletions app/actions/Create.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import java.util.List;
import com.fasterxml.jackson.databind.JsonNode;
import helper.HttpArchiveException;
import helper.WebsiteVersionPublisher;
import helper.oai.OaiDispatcher;
import helper.WpullCrawl;
import models.Gatherconf;
Expand Down Expand Up @@ -68,6 +69,7 @@ public Node updateResource(Node node, RegalObject object) {
}

private Node updateResource(Node node) {
play.Logger.debug("Updating Node with Pid " + node.getPid());
Globals.fedora.updateNode(node);
updateIndex(node.getPid());
return node;
Expand All @@ -79,8 +81,11 @@ private Node updateResource(Node node) {
* @return the updated node
*/
public Node patchResource(Node node, RegalObject object) {
play.Logger.debug("Patching Node with Pid " + node.getPid());
new Index().remove(node);
setNodeMembers(node, object);
node.setLastModifyMessage(
WebsiteVersionPublisher.handleWebpagePublishing(node, object));
return updateResource(node);
}

Expand Down
2 changes: 1 addition & 1 deletion app/actions/Modify.java
Original file line number Diff line number Diff line change
Expand Up @@ -791,7 +791,7 @@ class MetadataNotFoundException extends RuntimeException {
}

@SuppressWarnings({ "serial" })
private class UpdateNodeException extends RuntimeException {
public class UpdateNodeException extends RuntimeException {
UpdateNodeException(Throwable cause) {
super(cause);
}
Expand Down
2 changes: 1 addition & 1 deletion app/archive/fedora/FedoraFacade.java
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,7 @@ public void updateNode(Node node) {
} else {
utils.updateUnManagedStream(node);
}

play.Logger.debug("Updated stream");
}
if (node.getMetadataFile() != null) {
utils.updateMetadataStream(node);
Expand Down
29 changes: 23 additions & 6 deletions app/controllers/Resource.java
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@
import authenticate.BasicAuth;
import helper.HttpArchiveException;
import helper.WebgatherUtils;
import helper.WebsiteVersionPublisher;
import helper.oai.OaiDispatcher;
import models.DublinCoreData;
import models.Gatherconf;
Expand Down Expand Up @@ -315,11 +316,20 @@ public static Promise<Result> listDc(@PathParam("pid") String pid) {
@ApiImplicitParam(value = "New Object", required = true, dataType = "RegalObject", paramType = "body") })
public static Promise<Result> patchResource(@PathParam("pid") String pid) {
return new ModifyAction().call(pid, userId -> {
Node node = readNodeOrNull(pid);
RegalObject object = getRegalObject(request().body().asJson());
Node newNode = create.patchResource(node, object);
String result = newNode.getPid() + " created/updated!";
return JsonMessage(new Message(result));
try {
play.Logger.debug("Patching Pid: " + pid);
String result = "";
Node node = readNodeOrNull(pid);
RegalObject object = getRegalObject(request().body().asJson());
Node newNode = create.patchResource(node, object);
result = newNode.getLastModifyMessage();
result = result.concat(" " + newNode.getPid() + " created/updated!");
return JsonMessage(new Message(result));
} catch (Exception e) {
play.Logger.error("", e);
return JsonMessage(new Message(e, 500));
// return JsonMessage(new Message( json(e.toString()) ));
}
});
}

Expand All @@ -345,6 +355,8 @@ public static Promise<Result> patchResources(@PathParam("pid") String pid) {
@ApiImplicitParam(value = "New Object", required = true, dataType = "RegalObject", paramType = "body") })
public static Promise<Result> updateResource(@PathParam("pid") String pid) {
return new ModifyAction().call(pid, userId -> {
play.Logger.debug("Updating Pid: " + pid);
String result = "";
Node node = readNodeOrNull(pid);
RegalObject object = getRegalObject(request().body().asJson());
Node newNode = null;
Expand All @@ -355,9 +367,11 @@ public static Promise<Result> updateResource(@PathParam("pid") String pid) {
} else {
newNode = create.updateResource(node, object);
}
String result = newNode.getPid() + " created/updated!";
result = result.concat(newNode.getPid() + " created/updated!");
return JsonMessage(new Message(result));

});

}

@ApiOperation(produces = "application/json", nickname = "createNewResource", value = "createNewResource", notes = "Creates a Resource on a new position", response = Message.class, httpMethod = "PUT")
Expand All @@ -367,6 +381,9 @@ public static Promise<Result> createResource(
@PathParam("namespace") String namespace) {
return new CreateAction().call((userId) -> {
RegalObject object = getRegalObject(request().body().asJson());
if (object.getContentType().equals("webpage")) {
object.setAccessScheme("restricted");
}
Node newNode = create.createResource(namespace, object);
String result = newNode.getPid() + " created/updated!";
response().setHeader("Location", read.getHttpUriOfResource(newNode));
Expand Down
7 changes: 4 additions & 3 deletions app/helper/JsonMapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ public JsonMapper(final Node n) {
node.getPid() + " metadata2 stream is NULL!");
} catch (Exception e) {
play.Logger.warn("", e.getMessage());
play.Logger.debug("", e);
// play.Logger.debug("", e);
}

}
Expand Down Expand Up @@ -296,7 +296,7 @@ private Map<String, Object> getDescriptiveMetadata1() {
return rdf;
} catch (Exception e) {
play.Logger
.trace(node.getPid() + " can not create JSON! " + e.getMessage());
.warn(node.getPid() + " can not create JSON! " + e.getMessage());
play.Logger.trace("", e);
}
return null;
Expand All @@ -312,7 +312,7 @@ private Map<String, Object> getDescriptiveMetadata2() {
} catch (Exception e) {
play.Logger.warn(node.getPid()
+ " has no descriptive Metadata2! Try to return metadata instead.");
play.Logger.debug("", e);
// play.Logger.debug("", e);
}
return getDescriptiveMetadata1();
}
Expand Down Expand Up @@ -533,6 +533,7 @@ private void postProcessContribution(Map<String, Object> rdf) {
rdf.put("creator", creator);
} catch (Exception e) {
play.Logger.debug("Problem processing key contribution.agent", e);
// play.Logger.debug("", e);
}
}

Expand Down
15 changes: 0 additions & 15 deletions app/helper/WebgatherUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,33 +16,18 @@
*/
package helper;

import static org.junit.Assert.assertEquals;

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.IDN;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map.Entry;

import com.google.common.base.CharMatcher;

import actions.Create;
import actions.Modify;
import actions.RegalAction;
import helper.mail.Mail;
import models.Gatherconf;
import models.Globals;
import models.Message;
import models.Node;
import play.Logger;
import play.Play;

/**
* Eine Klasse mit nützlichen Methoden im Umfeld des Webgatherings
Expand Down
Loading

0 comments on commit 0f9f282

Please sign in to comment.