-
Notifications
You must be signed in to change notification settings - Fork 40
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #101 from FAIRDataTeam/release/1.7.0
Release 1.7.0
- Loading branch information
Showing
104 changed files
with
5,732 additions
and
109 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,158 @@ | ||
# Changelog | ||
|
||
All notable changes to this project will be documented in this file. | ||
|
||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | ||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
|
||
## [Unreleased] | ||
|
||
## [1.7.0] | ||
|
||
### Added | ||
|
||
- Possibility to change profile and password for current user | ||
- FDP Index functionality (moved from [FAIRDataPoint-index](https://github.com/FAIRDataTeam/FAIRDataPoint-index)) | ||
- Harvestor for collecting metadata | ||
- Support for PROF profiles | ||
- Metadata search including RDF type | ||
|
||
### Fixed | ||
|
||
- Fix schema.org URL in pom.xml | ||
|
||
## [1.6.0] | ||
|
||
### Added | ||
|
||
- API keys | ||
- Draft state for stored metadata | ||
|
||
## [1.5.0] | ||
|
||
### Added | ||
|
||
- Support custom resource definitions allowing more children | ||
|
||
### Changed | ||
|
||
- Upgrade Java JDK from 11 to 14 | ||
- Switch to `OffsetDateTime` | ||
|
||
## [1.4.0] | ||
|
||
### Added | ||
|
||
- Ping service (for *call home* functionality) | ||
|
||
### Fixed | ||
|
||
- Fix saving of nested entities in metadata | ||
- Fix Git app info in actuator endpoint | ||
|
||
### Removed | ||
|
||
- `themeTaxonomies` on incoming catalog | ||
|
||
## [1.3.0] | ||
|
||
### Added | ||
|
||
- Shape definitions with DASH support | ||
- Endpoint for bootstrapping [Client] | ||
- Validation for SHACL definitions in shapes | ||
- Production migration for shape definitions | ||
|
||
### Changed | ||
|
||
- Embed fairmetadata4j into the project | ||
- Split instanceUrl to clientUrl and persistentUrl | ||
|
||
### Removed | ||
|
||
- Internal PID system | ||
- Dashboard identifier | ||
|
||
## [1.2.1] | ||
|
||
### Fixed | ||
|
||
- HTTP XFF (`X-Forwarded-For`) headers and `PUBLIC_PATH` envvar replaced using `instanceUrl` | ||
|
||
## [1.2.0] | ||
|
||
### Added | ||
|
||
- References to related repositories | ||
- Option to customize metamodel (metadata layers) | ||
|
||
### Changed | ||
|
||
- Switch to GitHub Actions (from Travis CI) | ||
- Swagger config reflects `instanceUrl` | ||
- Reformatted and updated SHACL definitions to use `sh:and` according to the FDP specification | ||
|
||
## [1.1.0] | ||
|
||
### Added | ||
|
||
- Endpoint for [Client] configuration | ||
- Spring Boot Actuator for monitoring and service info | ||
|
||
### Changed | ||
|
||
- Unified package names (`dtl` to `dtls`) | ||
- Loading of production configuration | ||
|
||
### Fixed | ||
|
||
- Fix crashing on mapping null descriptions, licenses, etc. | ||
|
||
### Removed | ||
|
||
- Fallback to `InMemory` when a connection to the configured repository fails | ||
|
||
## [1.0.0] | ||
|
||
Refactored and cleaned-up version of reference FAIR Data Point implementation supporting a new [FAIRDataPoint-client](https://github.com/FAIRDataTeam/FAIRDataPoint-client). | ||
|
||
### Added | ||
|
||
- ACLs and use Spring Security with Mongo for authentication | ||
- User Management and Metadata for [FAIRDataPoint-client](https://github.com/FAIRDataTeam/FAIRDataPoint-client) | ||
- Themes caching for catalog and several other optimizations | ||
|
||
### Changed | ||
|
||
- Complete refactoring, cleaning accumulated changed and deprecations, reformatting code | ||
- Upgrade Java JDK from 8 to 11 | ||
- Enhanced Swagger UI API documentation | ||
- Improve CI (on Travis) to automatically build and publish Docker image | ||
|
||
### Fixed | ||
|
||
- Several fixes of metadata, configuration, tests, and convertors | ||
|
||
## [0.1-beta] | ||
|
||
The first release of reference FAIR Data Point implementation. | ||
|
||
### Added | ||
|
||
- REST API according to the FDP specification supporting `GET`, `POST`, and `PATCH` for **repository**, **catalog**, **dataset**, and **distribution** layers | ||
- API documentation using Swagger UI | ||
|
||
|
||
[Client]: https://github.com/FAIRDataTeam/FAIRDataPoint-client | ||
|
||
[Unreleased]: /../../compare/master...develop | ||
[0.1-beta]: /../../tree/0.1-beta | ||
[1.0.0]: /../../tree/v1.0.0 | ||
[1.1.0]: /../../tree/v1.1.0 | ||
[1.2.0]: /../../tree/v1.2.0 | ||
[1.2.1]: /../../tree/v1.2.1 | ||
[1.3.0]: /../../tree/v1.3.0 | ||
[1.4.0]: /../../tree/v1.4.0 | ||
[1.5.0]: /../../tree/v1.5.0 | ||
[1.6.0]: /../../tree/v1.6.0 | ||
[1.7.0]: /../../tree/v1.7.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
69 changes: 69 additions & 0 deletions
69
src/main/java/nl/dtls/fairdatapoint/api/controller/index/AdminController.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
/** | ||
* The MIT License | ||
* Copyright © 2017 DTL | ||
* | ||
* Permission is hereby granted, free of charge, to any person obtaining a copy | ||
* of this software and associated documentation files (the "Software"), to deal | ||
* in the Software without restriction, including without limitation the rights | ||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
* copies of the Software, and to permit persons to whom the Software is | ||
* furnished to do so, subject to the following conditions: | ||
* | ||
* The above copyright notice and this permission notice shall be included in | ||
* all copies or substantial portions of the Software. | ||
* | ||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
* THE SOFTWARE. | ||
*/ | ||
package nl.dtls.fairdatapoint.api.controller.index; | ||
|
||
import io.swagger.annotations.ApiOperation; | ||
import lombok.extern.log4j.Log4j2; | ||
import nl.dtls.fairdatapoint.entity.index.event.Event; | ||
import nl.dtls.fairdatapoint.service.index.event.EventService; | ||
import nl.dtls.fairdatapoint.service.index.webhook.WebhookService; | ||
import org.springframework.beans.factory.annotation.Autowired; | ||
import org.springframework.http.HttpStatus; | ||
import org.springframework.security.access.prepost.PreAuthorize; | ||
import org.springframework.web.bind.annotation.*; | ||
|
||
import javax.servlet.http.HttpServletRequest; | ||
import java.util.UUID; | ||
|
||
@Log4j2 | ||
@RestController | ||
@RequestMapping("/index/admin") | ||
public class AdminController { | ||
|
||
@Autowired | ||
private EventService eventService; | ||
|
||
@Autowired | ||
private WebhookService webhookService; | ||
|
||
@ApiOperation(value = "trigger", hidden = true) | ||
@PostMapping("/trigger") | ||
@PreAuthorize("hasRole('ADMIN')") | ||
@ResponseStatus(HttpStatus.NO_CONTENT) | ||
public void triggerMetadataRetrieve(@RequestParam(required = false) String clientUrl, HttpServletRequest request) { | ||
log.info("Received ping from {}", request.getRemoteAddr()); | ||
final Event event = eventService.acceptAdminTrigger(request, clientUrl); | ||
webhookService.triggerWebhooks(event); | ||
eventService.triggerMetadataRetrieval(event); | ||
} | ||
|
||
@ApiOperation(value = "ping webhook", hidden = true) | ||
@PostMapping("/ping-webhook") | ||
@PreAuthorize("hasRole('ADMIN')") | ||
@ResponseStatus(HttpStatus.NO_CONTENT) | ||
public void webhookPing(@RequestParam(required = true) UUID webhook, HttpServletRequest request) { | ||
log.info("Received webhook {} ping trigger from {}", webhook, request.getRemoteAddr()); | ||
final Event event = webhookService.handleWebhookPing(request, webhook); | ||
webhookService.triggerWebhooks(event); | ||
} | ||
} |
Oops, something went wrong.