Compare commits

..

No commits in common. "master" and "r5.2.0" have entirely different histories.

5 changed files with 46 additions and 70 deletions

1
.gitignore vendored
View File

@ -2,4 +2,3 @@ target
.classpath
.project
.settings
/.DS_Store

View File

@ -3,16 +3,6 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [v2.0.0]
- Adding support for "FAO SDG 14.4.1 Questionnaire" source [#23670]
- Upgraded gcube-bom version to 2.1.0
## [v1.3.2]
- Updated Labels [#23167]
## [v1.3.1] - 2021-04-09
### Changed

View File

@ -14,7 +14,7 @@
<groupId>org.gcube.data-catalogue</groupId>
<artifactId>grsf-common-library</artifactId>
<packaging>jar</packaging>
<version>2.0.0</version>
<version>1.3.1</version>
<description>Common library for GRSF service and management panel</description>
<properties>
@ -40,7 +40,7 @@
<dependency>
<groupId>org.gcube.distribution</groupId>
<artifactId>gcube-bom</artifactId>
<version>2.1.0</version>
<version>2.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>

View File

@ -23,9 +23,8 @@ public class Constants {
public static final String UUID_KB_CUSTOM_KEY = "GRSF UUID";
public static final String UUID_KB_JSON_KEY = "grsf_uuid";
public static final String DOMAIN_CUSTOM_KEY = "Domain";
public static final String DATA_OWNER_CUSTOM_KEY = "Data Owner";
public static final String DATA_OWNER_CUSTOM_KEY = "Data owner";
public static final String DATA_OWNER_JSON_KEY = "data_owner";
public static final String DATABASE_SOURCES_CUSTOM_KEY = "Database Source";
public static final String DATABASE_SOURCES_JSON_KEY = "database_sources";
public static final String SOURCES_OF_INFORMATION_JSON_KEY = "source_of_information";
public static final String REFERS_TO_JSON_KEY = "refers_to";
@ -33,25 +32,25 @@ public class Constants {
public static final String SHORT_NAME_JSON_KEY = "short_name";
public static final String TRACEABILITY_FLAG_CUSTOM_KEY = "Traceability Flag";
public static final String TRACEABILITY_FLAG_JSON_KEY = "traceability_flag";
public static final String TRACEABILITY_FLAG_GROUP_NAME = "GRSF" + TRACEABILITY_FLAG_CUSTOM_KEY;
public static final String SDG_FLAG_CUSTOM_KEY = "SDG Flag";
public static final String SDG_FLAG_JSON_KEY = "sdg_flag";
public static final String SDG_FLAG_GROUP_NAME = "GRSF " + SDG_FLAG_CUSTOM_KEY;
public static final String CATCHES_CUSTOM_KEY = "Catch";
public static final String CATCHES_CUSTOM_KEY = "Catches";
public static final String CATCHES_JSON_KEY = "catches";
public static final String LANDINGS_CUSTOM_KEY = "Landing";
public static final String LANDINGS_CUSTOM_KEY = "Landings";
public static final String LANDINGS_JSON_KEY = "landings";
public static final String SPECIES_CUSTOM_KEY = "Species";
public static final String SPECIES_JSON_KEY = "species";
public static final String STATUS_OF_THE_GRSF_RECORD_CUSTOM_KEY = "Status of the Record";
public static final String STATUS_OF_THE_GRSF_RECORD_CUSTOM_KEY = "Status of the GRSF record";
public static final String STATUS_OF_THE_GRSF_RECORD_JSON_KEY = "status_grsf_record";
public static final String SIMILAR_GRSF_RECORDS_CUSTOM_KEY = "Similar GRSF Record";
public static final String SIMILAR_GRSF_RECORDS_JSON_KEY = "similar_grsf_records";
public static final String GRSF_SEMANTIC_IDENTIFIER_CUSTOM_KEY = "GRSF Semantic Identifier";
public static final String SIMILAR_SOURCE_RECORDS_CUSTOM_KEY = "Similar Source Record";
public static final String SIMILAR_SOURCE_RECORDS_JSON_KEY = "similar_source_records";
public static final String GRSF_SEMANTIC_IDENTIFIER_CUSTOM_KEY = "GRSF Semantic identifier";
public static final String GRSF_SEMANTIC_IDENTIFIER_JSON_KEY = "grsf_semantic_identifier";
public static final String GRSF_TYPE_CUSTOM_KEY = "GRSF Type";
public static final String GRSF_TYPE_JSON_KEY = "grsf_type";
public static final String MANAGEMENT_ENTITIES_CUSTOM_KEY = "Management Body/Authority";
public static final String MANAGEMENT_ENTITIES_CUSTOM_KEY = "Management Body/Authority(ies)";
public static final String MANAGEMENT_ENTITIES_JSON_KEY = "management_body_authorities";
public static final String CITATION_CUSTOM_KEY = "Citation";
@ -62,13 +61,13 @@ public class Constants {
public static final String CONNECTED_JSON_KEY = "connected";
// stock record
public static final String STOCK_NAME_CUSTOM_KEY = "GRSF Stock Name";
public static final String STOCK_NAME_CUSTOM_KEY = "Stock Name";
public static final String STOCK_NAME_JSON_KEY = "stock_name";
public static final String ASSESSMENT_AREA_CUSTOM_KEY = "Assessment Area";
public static final String ASSESSMENT_AREA_JSON_KEY = "assessment_area";
public static final String EXPLOITING_FISHERY_CUSTOM_KEY = "Exploiting Fishery";
public static final String EXPLOITING_FISHERY_JSON_KEY = "exploiting_fishery";
public static final String ASSESSMENT_METHODS_CUSTOM_KEY = "Assessment Method";
public static final String ASSESSMENT_METHODS_CUSTOM_KEY = "Assessment Methods";
public static final String ASSESSMENT_METHODS_JSON_KEY = "assessment_methods";
public static final String FIRMS_ABUNDANCE_LEVEL_CUSTOM_KEY = "Abundance Level (FIRMS Standard)";
public static final String FIRMS_ABUNDANCE_LEVEL_JSON_KEY = "firms_standard_abundance_level";
@ -80,7 +79,7 @@ public class Constants {
public static final String FISHING_PRESSURE_JSON_KEY = "fishing_pressure";
public static final String STATE_AND_TREND_MARINE_RESOURCE_CUSTOM_KEY = "State and Trend";
public static final String STATE_AND_TREND_MARINE_RESOURCE_JSON_KEY = "state_and_trend_of_marine_resources";
public static final String FAO_CATEGORIES_CUSTOM_KEY = "FAO Stock Status Category";
public static final String FAO_CATEGORIES_CUSTOM_KEY = "Fao Categories";
public static final String FAO_CATEGORIES_JSON_KEY = "fao_categories";
public static final String BIOMASS_CUSTOM_KEY = "Biomass";
public static final String BIOMASS_JSON_KEY = "biomass";
@ -88,21 +87,15 @@ public class Constants {
public static final String SCIENTIFIC_ADVICE_JSON_KEY = "scientific_advice";
public static final String ASSESSOR_CUSTOM_KEY = "Assessor";
public static final String ASSESSOR_JSON_KEY = "assessor";
// Must be 'spatial' to allow the Solr plugin to properly index large GeoJson
// The Key will be replaced in the language file to Geospatial as indicated in the wiki
// https://wiki.gcube-system.org/gcube/GCube_Data_Catalogue_for_GRSF#Common_Metadata
public static final String SPATIAL_GEOJSON_CUSTOM_KEY = "spatial";
public static final String SPATIAL_GEOJSON_JSON_KEY = "spatial";
public static final String SPATIAL_GEOJSON_CUSTOM_KEY = "spatial";
public static final String FISHERY_URI = "fishery_uri";
public static final String STOCK_URI = "stock_uri";
// fishery record
public static final String FISHERY_NAME_CUSTOM_KEY = "GRSF Fishery Name";
public static final String FISHERY_NAME_CUSTOM_KEY = "Fishery Name";
public static final String FISHERY_NAME_JSON_KEY = "fishery_name";
public static final String FISHING_AREA_CUSTOM_KEY = "Fishing Area";
public static final String FISHING_AREA_CUSTOM_KEY = "Fishing area";
public static final String FISHING_AREA_JSON_KEY = "fishing_area";
public static final String RESOURCES_EXPLOITED_CUSTOM_KEY = "Resources Exploited";
public static final String RESOURCES_EXPLOITED_JSON_KEY = "resources_exploited";
@ -110,7 +103,9 @@ public class Constants {
public static final String FLAG_STATE_JSON_KEY = "flag_state";
public static final String JURISDICTION_AREA_CUSTOM_KEY = "Jurisdiction Area";
public static final String JURISDICTION_AREA_JSON_KEY = "jurisdiction_area";
public static final String FISHING_GEAR_CUSTOM_KEY = "Fishing Gear";
public static final String PRODUCTION_SYSTEM_TYPE_CUSTOM_KEY = "Type of Production System";
public static final String PRODUCTION_SYSTEM_TYPE_JSON_KEY = "production_system_type";
public static final String FISHING_GEAR_CUSTOM_KEY = "Fishing gear";
public static final String FISHING_GEAR_JSON_KEY = "fishing_gear";
// similar records bean sub-fields
@ -122,7 +117,7 @@ public class Constants {
// other fields/regex
public static final String DEFAULT_LICENSE = "CC-BY-SA-4.0";
public static final String SYSTEM_TYPE_CUSTOM_KEY = "system:type";
public static final String SYSTEM_TYPE_LEGACY_RECORD = "Legacy";
public static final String SYSTEM_TYPE_FOR_SOURCES_VALUE = "Legacy";
public static final String GRSF_DATABASE_SOURCE = "Database Source";
public static final int TIME_SERIES_TAKE_LAST_VALUES = 5;
public static final String REGEX_TAGS = "[^\\s\\w-_.]";
@ -214,6 +209,10 @@ public class Constants {
public static final String NO_SIMILAR_GRSF_RECORDS = "No Similar Records";
public static final String NO_CONNECTED_RECORDS = "No Connected Records";
// groups for traceability and sdg flags
public static final String TRACEABILITY_FLAG_GROUP_NAME = "traceability-flag";
public static final String SDG_FLAG_GROUP_NAME = "sdg-flag";
// Used to Tag WithSimilarities/WithoutSimilarities see https://support.d4science.org/issues/11749
public static final String SIMILARITIES_INDICATOR = "similarities_indicator";

View File

@ -1,6 +1,7 @@
package org.gcube.datacatalogue.common.enums;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonCreator;
@ -12,73 +13,60 @@ import com.fasterxml.jackson.annotation.JsonValue;
*/
public enum Sources {
FIRMS("FIRMS","firms"),
RAM("RAM","ram"),
FISHSOURCE("FishSource", "fishsource"),
GRSF("GRSF", "grsf"),
SDG("FAO SDG 14.4.1 Questionnaire","sdg");
FIRMS("FIRMS"),
RAM("RAM"),
FISHSOURCE("FishSource"),
GRSF("GRSF");
private String sourceName;
private String urlPath;
private String subGroupNameOrig;
private Sources(String sourceName, String urlPath) {
this.sourceName = sourceName;
this.urlPath = urlPath;
private Sources(String origName) {
this.subGroupNameOrig = origName;
}
/**
* Return the original name
* @return
*/
public String getSourceName(){
return sourceName;
public String getOrigName(){
return subGroupNameOrig;
}
@JsonValue
public String onSerialize(){
return urlPath;
return subGroupNameOrig.toLowerCase();
}
@JsonCreator
public static Sources onDeserialize(String sourceString) {
if(sourceString != null) {
for(Sources source : Sources.values()) {
if (source.urlPath.equalsIgnoreCase(sourceString.trim())) {
if (source.toString().equalsIgnoreCase(sourceString.trim()))
return source;
}
if (source.sourceName.equalsIgnoreCase(sourceString.trim())) {
return source;
}
}
}
return null;
}
public String getURLPath() {
return urlPath;
}
@Override
public String toString() {
return urlPath;
return getOrigName();
}
public static String getJsonArrayAsString(){
return "[" + FIRMS.urlPath + "," +
RAM.urlPath + "," +
FISHSOURCE.urlPath + "," +
GRSF.urlPath + "," +
SDG.urlPath + "," + "]";
public static String getAsList(){
return "[" + Arrays.asList(
FIRMS.toString().toLowerCase(),
RAM.toString().toLowerCase(),
FISHSOURCE.toString().toLowerCase(),
GRSF.toString().toLowerCase()) + "]";
}
public static List<String> listNames(){
public static List<String> getListNames(){
List<String> valuesString = new ArrayList<String>(Sources.values().length);
for(Sources source : Sources.values()) {
valuesString.add(source.getSourceName());
}
for(Sources source : Sources.values())
valuesString.add(source.getOrigName());
return valuesString;
}
}