Skip to content

Commit 857de22

Browse files
committed
Merge pull request #14 from edoweb/0.6.0
0.6.0
2 parents 5f6b931 + 3cbeb33 commit 857de22

File tree

8 files changed

+48
-28
lines changed

8 files changed

+48
-28
lines changed

app/actions/Create.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,13 @@
1717
package actions;
1818

1919
import static archive.fedora.Vocabulary.TYPE_OBJECT;
20+
import helper.HttpArchiveException;
2021

2122
import java.util.List;
2223

24+
import org.openrdf.rio.RDFFormat;
25+
26+
import archive.fedora.RdfUtils;
2327
import models.Globals;
2428
import models.Node;
2529
import models.RegalObject;
@@ -113,8 +117,6 @@ private void setNodeMembers(Node node, RegalObject object) {
113117
setNodeType(object.getContentType(), node);
114118
if (object.getParentPid() != null)
115119
linkWithParent(object.getParentPid(), node);
116-
if (object.getTransformer() != null)
117-
updateTransformer(object.getTransformer(), node);
118120
if (object.getAccessScheme() != null)
119121
node.setAccessScheme(object.getAccessScheme());
120122
if (object.getPublishScheme() != null)
@@ -125,17 +127,19 @@ private void setNodeMembers(Node node, RegalObject object) {
125127
node.setImportedFrom(object.getIsDescribedBy().getImportedFrom());
126128
if (object.getIsDescribedBy().getLegacyId() != null)
127129
node.setLegacyId(object.getIsDescribedBy().getLegacyId());
130+
if (object.getTransformer() != null)
131+
updateTransformer(object.getTransformer(), node);
128132
}
129133

130134
private void overrideNodeMembers(Node node, RegalObject object) {
131135
setNodeType(object.getContentType(), node);
132136
linkWithParent(object.getParentPid(), node);
133-
updateTransformer(object.getTransformer(), node);
134137
node.setAccessScheme(object.getAccessScheme());
135138
node.setPublishScheme(object.getPublishScheme());
136139
node.setCreatedBy(object.getIsDescribedBy().getCreatedBy());
137140
node.setImportedFrom(object.getIsDescribedBy().getImportedFrom());
138141
node.setLegacyId(object.getIsDescribedBy().getLegacyId());
142+
updateTransformer(object.getTransformer(), node);
139143
}
140144

141145
private void setNodeType(String type, Node node) {
@@ -155,10 +159,19 @@ private void updateTransformer(List<String> transformers, Node node) {
155159
if ("public".equals(node.getPublishScheme())) {
156160
node.addTransformer(new Transformer("oaidc"));
157161
}
162+
if (node.hasUrn()) {
163+
node.addTransformer(new Transformer("epicur"));
164+
node.addTransformer(new Transformer("aleph"));
165+
}
166+
158167
if (transformers != null) {
159168
for (String t : transformers) {
160169
if ("oaidc".equals(t))
161-
continue; // already added
170+
continue; // implicitly added - or not allowed to set
171+
if ("epicur".equals(t))
172+
continue; // implicitly added - or not allowed to set
173+
if ("aleph".equals(t))
174+
continue; // implicitly added - or not allowed to set
162175
node.addTransformer(new Transformer(t));
163176
}
164177
}

app/actions/Index.java

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
*/
1717
package actions;
1818

19-
import java.text.DateFormat;
20-
import java.text.SimpleDateFormat;
21-
import java.util.Date;
2219
import java.util.List;
2320

2421
import models.Globals;
@@ -91,19 +88,13 @@ protected String index(Node n) {
9188
/**
9289
* @param nodes
9390
* a list of nodes
94-
* @param namespace
95-
* a namespace to create a new index from
91+
* @param indexNameWithDatestamp
92+
* a name for a new index
9693
* @return the list of indexed objects as string
9794
*/
98-
public String indexAll(List<Node> nodes, String namespace) {
99-
String indexNameWithDatestamp = namespace + "-" + getCurrentDate();
95+
public String indexAll(List<Node> nodes, String indexNameWithDatestamp) {
10096
return Globals.search.indexAll(nodes, indexNameWithDatestamp)
10197
.toString();
10298
}
10399

104-
private String getCurrentDate() {
105-
DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
106-
Date date = new Date();
107-
return dateFormat.format(date);
108-
}
109100
}

app/controllers/MyController.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import helper.HttpArchiveException;
2020

2121
import java.io.StringWriter;
22+
import java.text.DateFormat;
2223
import java.text.ParseException;
2324
import java.text.SimpleDateFormat;
2425
import java.util.Date;
@@ -405,4 +406,10 @@ public static Date createDateFromString(String d) {
405406
throw new HttpArchiveException(500, e);
406407
}
407408
}
409+
410+
protected static String getCurrentDate() {
411+
DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
412+
Date date = new Date();
413+
return dateFormat.format(date);
414+
}
408415
}

app/controllers/MyUtils.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,10 @@ public static Promise<Result> index(@PathParam("pid") String pid,
6868
public static Promise<Result> indexAll(
6969
@QueryParam("index") final String indexName) {
7070
return new BulkActionAccessor().call(() -> {
71+
String indexNameWithDatestamp = indexName + "-" + getCurrentDate();
7172
actions.BulkAction bulk = new actions.BulkAction();
7273
bulk.execute(indexName, nodes -> {
73-
return index.indexAll(nodes, indexName);
74+
return index.indexAll(nodes, indexNameWithDatestamp);
7475
});
7576
response().setHeader("Transfer-Encoding", "Chunked");
7677
return ok(bulk.getChunks());
@@ -188,19 +189,19 @@ public static Promise<Result> initContentModels(
188189
return new BulkActionAccessor().call(() -> {
189190
List<Transformer> transformers = new Vector<Transformer>();
190191
transformers.add(new Transformer(namespace + "epicur", "epicur",
191-
"http://edoweb-anonymous-user:nopwd@" + Globals.server
192+
"http://edoweb-anonymous-user:nopwd@" + "localhost:9000"
192193
+ "/resource/(pid)." + namespace + "epicur"));
193194
transformers.add(new Transformer(namespace + "oaidc", "oaidc",
194-
"http://edoweb-anonymous-user:nopwd@" + Globals.server
195+
"http://edoweb-anonymous-user:nopwd@" + "localhost:9000"
195196
+ "/resource/(pid)." + namespace + "oaidc"));
196197
transformers.add(new Transformer(namespace + "pdfa", "pdfa",
197-
"http://edoweb-anonymous-user:nopwd@" + Globals.server
198+
"http://edoweb-anonymous-user:nopwd@" + "localhost:9000"
198199
+ "/resource/(pid)." + namespace + "pdfa"));
199200
transformers.add(new Transformer(namespace + "pdfbox", "pdfbox",
200-
"http://edoweb-anonymous-user:nopwd@" + Globals.server
201+
"http://edoweb-anonymous-user:nopwd@" + "localhost:9000"
201202
+ "/resource/(pid)." + namespace + "pdfbox"));
202203
transformers.add(new Transformer(namespace + "aleph", "aleph",
203-
"http://edoweb-anonymous-user:nopwd@" + Globals.server
204+
"http://edoweb-anonymous-user:nopwd@" + "localhost:9000"
204205
+ "/resource/(pid)." + namespace + "aleph"));
205206
create.contentModelsInit(transformers);
206207
String result = "Reinit contentModels " + namespace + "epicur, "

app/converter/mab/RegalToMabMapper.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,9 +100,12 @@ private void handleTypes(String subj, String pred, String obj) {
100100

101101
private void handleFreeFields(String subj, String pred, String obj) {
102102

103-
if (archive.fedora.Vocabulary.REL_MAB_527.equals(pred))
104-
record.id = obj.substring(obj.lastIndexOf('/') + 1);
105-
else if ("http://purl.org/dc/terms/created".equals(pred))
103+
if (archive.fedora.Vocabulary.REL_MAB_527.equals(pred)) {
104+
String id = obj.substring(obj.lastIndexOf('/') + 1);
105+
if (!id.startsWith("urn")) {
106+
record.id = id;
107+
}
108+
} else if ("http://purl.org/dc/terms/created".equals(pred))
106109
record.datumDerErsterfassung = obj;
107110
else if ("http://purl.org/dc/terms/title".equals(pred))
108111
record.hauptsachtitelVorlage = obj;

app/models/Node.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838

3939
import org.openrdf.rio.RDFFormat;
4040

41+
import archive.fedora.RdfException;
4142
import archive.fedora.RdfUtils;
4243

4344
import com.fasterxml.jackson.annotation.JsonIgnore;
@@ -1210,7 +1211,11 @@ public String toString() {
12101211
*/
12111212
public boolean hasUrn() {
12121213
String hasUrn = "http://purl.org/lobid/lv#urn";
1213-
return RdfUtils.hasTriple(pid, hasUrn, metadata);
1214+
try {
1215+
return RdfUtils.hasTriple(pid, hasUrn, metadata);
1216+
} catch (Exception e) {
1217+
return false;
1218+
}
12141219
}
12151220

12161221
/**

build.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import com.github.play2war.plugin._
22

33
name := "regal-api"
44

5-
version := "0.6.0-SNAPSHOT"
5+
version := "0.6.0"
66

77
Play2WarPlugin.play2WarSettings
88

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<project>
22
<groupId>de.nrw.hbz.regal</groupId>
3-
<version>0.6.0-SNAPSHOT</version>
3+
<version>0.6.0</version>
44
<properties>
55
<play2.version>2.2.3</play2.version>
66
</properties>

0 commit comments

Comments
 (0)