Skip to content

Commit 119e0b3

Browse files
author
lbownik
committed
Closes #2736 Import Geonames Data
1 parent 5ca869d commit 119e0b3

37 files changed

Lines changed: 5716 additions & 34 deletions

conf/solr/7.3.1/Dockerfile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,18 @@ RUN cp -r server/solr/configsets/_default server/solr/rorSuggestions \
1818
&& mv solrconfig.xml server/solr/rorSuggestions/conf/ \
1919
&& echo "Configured rorSuggestions"
2020

21+
ADD geonames/schema.xml ./
22+
ADD geonames/solrconfig.xml ./
23+
RUN cp -r server/solr/configsets/_default server/solr/geonames \
24+
&& mv schema.xml server/solr/geonames/conf/ \
25+
&& mv solrconfig.xml server/solr/geonames/conf/ \
26+
&& echo "Configured geonames"
27+
2128
USER solr
2229

2330
RUN ./bin/solr start \
2431
&& ./bin/solr create_core -c collection1 -d server/solr/collection1/conf \
2532
&& ./bin/solr create_core -c rorSuggestions -d server/solr/rorSuggestions/conf \
33+
&& ./bin/solr create_core -c geonames -d server/solr/geonames/conf \
2634
&& echo "Done creating collections"
2735

conf/solr/7.3.1/geonames/schema.xml

Lines changed: 985 additions & 0 deletions
Large diffs are not rendered by default.

conf/solr/7.3.1/geonames/solrconfig.xml

Lines changed: 1238 additions & 0 deletions
Large diffs are not rendered by default.

dev

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ export DATAVERSE_SOURCE_DIR="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P
66
(
77
cd "${DATAVERSE_SOURCE_DIR}"
88

9-
export BUILD_VERSION="dv-1.0"
9+
export BUILD_VERSION="dv-1.1"
1010
export DATAVERSE_CONFIG_FILES=(
1111
"conf/glassfish/dataverse.properties"
1212
"conf/glassfish/default.config"

fairchive-persistence/src/main/java/edu/harvard/iq/dataverse/persistence/dataset/DatasetField.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -379,6 +379,14 @@ public boolean isGeospatial() {
379379
return this.datasetFieldType.isGeospatial();
380380
}
381381

382+
public boolean isGeoName() {
383+
return this.datasetFieldType.isGeoName();
384+
}
385+
386+
public boolean isPeriodo() {
387+
return this.datasetFieldType.isPeriodo();
388+
}
389+
382390
public boolean isVisibleThroughAnonymizedUrl() {
383391
return this.datasetFieldType.isVisibleThroughAnonymizedUrl();
384392
}
@@ -484,12 +492,11 @@ private String getUnsanitizedDisplayValue() {
484492

485493
private String getFieldDisplayValue(String value, DatasetFieldType fieldType) {
486494

487-
if (fieldType.getFieldType().equals(FieldType.PERIODO)) {
495+
if (fieldType.isPeriodo()) {
488496
return "<a href=\"" + this.fieldValue + "\" target=\"_blank\">" + this.fieldValue +
489497
"</a><br>" + PeriodoDictionary.getByUrl(this.fieldValue).get()
490498
.getDetails("<b>", "</b>", "<br>");
491499
}
492-
493500
String retVal = "";
494501
if (!StringUtils.isBlank(value) && !DatasetField.NA_VALUE.equals(value)) {
495502
String format = fieldType.getDisplayFormat();

fairchive-persistence/src/main/java/edu/harvard/iq/dataverse/persistence/dataset/DatasetFieldType.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import static javax.persistence.CascadeType.PERSIST;
1010
import static javax.persistence.CascadeType.REMOVE;
1111
import static javax.persistence.GenerationType.IDENTITY;
12+
import static org.apache.commons.lang3.StringUtils.isNotBlank;
1213

1314
import java.io.Serializable;
1415
import java.util.ArrayList;
@@ -42,6 +43,9 @@
4243

4344
import org.apache.commons.lang3.StringUtils;
4445

46+
import com.google.gson.JsonObject;
47+
import com.google.gson.JsonParser;
48+
4549
import edu.harvard.iq.dataverse.common.BundleUtil;
4650
import edu.harvard.iq.dataverse.persistence.JpaEntity;
4751
import edu.harvard.iq.dataverse.persistence.config.JsonMapConverter;
@@ -332,6 +336,17 @@ public InputRendererType getInputRendererType() {
332336
public String getInputRendererOptions() {
333337
return inputRendererOptions;
334338
}
339+
340+
public JsonObject getInputRendererOptionsAsJson() {
341+
try {
342+
return isNotBlank(this.inputRendererOptions)
343+
? new JsonParser().parse(this.inputRendererOptions).getAsJsonObject()
344+
: new JsonObject();
345+
} catch (final Exception e) {
346+
throw new RuntimeException(
347+
"Unable to parse input renderer options for field " + this.fieldType, e);
348+
}
349+
}
335350

336351
public String getValidation() {
337352
return validation;
@@ -454,6 +469,14 @@ public boolean isGeospatial() {
454469
public boolean isPeriodo() {
455470
return this.fieldType.isPeriodo();
456471
}
472+
473+
public boolean isGeoBox() {
474+
return this.fieldType.isGeoBox();
475+
}
476+
477+
public boolean isGeoName() {
478+
return this.fieldType.isGeoName();
479+
}
457480

458481
@Override
459482
public int compareTo(DatasetFieldType o) {

fairchive-persistence/src/main/java/edu/harvard/iq/dataverse/persistence/dataset/FieldType.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* The set of possible metatypes of the field. Used for validation and layout.
55
*/
66
public enum FieldType {
7-
TEXT, TEXTBOX, DATE, EMAIL, URL, FLOAT, INT, CHECKBOX, NONE, GEOBOX, PERIODO;
7+
TEXT, TEXTBOX, DATE, EMAIL, URL, FLOAT, INT, CHECKBOX, NONE, GEOBOX, PERIODO, GEONAME;
88

99
public boolean sanitizeHtml() {
1010
return this.equals(URL) | this.equals(TEXTBOX);
@@ -34,4 +34,12 @@ public boolean isDate() {
3434
public boolean isPeriodo() {
3535
return this.equals(PERIODO);
3636
}
37+
38+
public boolean isGeoBox() {
39+
return this.equals(GEOBOX);
40+
}
41+
42+
public boolean isGeoName() {
43+
return this.equals(GEONAME);
44+
}
3745
}

fairchive-persistence/src/main/java/edu/harvard/iq/dataverse/persistence/dataset/InputRendererType.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,6 @@ public enum InputRendererType {
5151
* values defined in renderer options
5252
*/
5353
HIDDEN_VOCABULARY,
54-
PERIODO;
54+
PERIODO,
55+
GEONAME;
5556
}

fairchive-persistence/src/main/resources/Bundle_en.properties

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3161,4 +3161,11 @@ periodo.location.desc=Area (description)
31613161
periodo.watermark=Period identifier (eg. p05gbpkdc7d) or name.
31623162
periodo.present=Present times
31633163
periodo.from=From
3164-
periodo.to=To
3164+
periodo.to=To
3165+
3166+
#geonames
3167+
geoname.id=Identifier
3168+
geoname.name=Name
3169+
geoname.hierarchy=Hierarchy
3170+
geoname.altnames=Alternative names
3171+
geonames.featurecode=Feature code

fairchive-persistence/src/main/resources/Bundle_pl.properties

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3113,3 +3113,10 @@ periodo.watermark=Identyfikator okresu (eg. p05gbpkdc7d) lub nazwa.
31133113
periodo.present=Czasy obecne
31143114
periodo.from=Od
31153115
periodo.to=Do
3116+
3117+
#geonames
3118+
geoname.id=Identyfikator
3119+
geoname.name=Nazwa
3120+
geoname.hierarchy=Hierarchia
3121+
geoname.altnames=Nazwy alternatywne
3122+
geonames.featurecode=Rodzaj

0 commit comments

Comments
 (0)