Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/EasyDynamics/oscal-rest-service
Implementation of the OSCAL REST API
https://github.com/EasyDynamics/oscal-rest-service
oscal
Last synced: 2 months ago
JSON representation
Implementation of the OSCAL REST API
- Host: GitHub
- URL: https://github.com/EasyDynamics/oscal-rest-service
- Owner: EasyDynamics
- License: mit
- Created: 2021-02-22T13:52:37.000Z (almost 4 years ago)
- Default Branch: develop
- Last Pushed: 2024-02-23T01:43:21.000Z (11 months ago)
- Last Synced: 2024-08-01T18:25:15.936Z (5 months ago)
- Topics: oscal
- Language: Java
- Size: 1.05 MB
- Stars: 19
- Watchers: 9
- Forks: 1
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-oscal - EasyDynamics OSCAL REST API Service - based implementation of some the OSCAL REST API listed above. It persists data as files in local directories. (Tools)
README
# OSCAL REST Service
Initial implementation of some the [OSCAL REST API](https://github.com/EasyDynamics/oscal-rest)
which persists data as files in local directories.## Project Organization
### oscal-rest-service-app
The Spring Boot application primarily consisting of Controllers that
delegate to the Service layer.### oscal-object-service
The Service layer that defines manipulation of OSCAL POJOs and delegates
persistance to the Repository layer.### oscal-data-repository-file-passthrough
A Repository layer implementation that persists OSCAL objects as local
JSON files.### oscal-data-repository-commons
A lower-level repository dependency that
leverages [liboscal-java](https://github.com/usnistgov/liboscal-java)
to define the OSCAL POJOs.## Local Development
### Prerequisites
- Java 17 or newer
- Maven### Building and Running
To build and install all of the above artifacts, from the `oscal-rest-service` root dir run:
```
mvn clean install
```To then launch the Spring Boot app:
```
cd oscal-rest-service-app
mvn spring-boot:run
```You can view the API specification [on GitHub][rest-api-github] or
[using Swagger Editor][swagger-editor].[rest-api-github]: https://github.com/EasyDynamics/oscal-rest
[swagger-editor]: https://editor.swagger.io/?url=https://raw.githubusercontent.com/EasyDynamics/oscal-rest/develop/openapi.yaml## Contributing
For the process of Contributing to the project, please review
[CONTRIBUTING.md](https://github.com/EasyDynamics/.github/blob/main/CONTRIBUTING.md)
and adhere to the
[Code of Conduct](https://github.com/EasyDynamics/.github/blob/main/CODE_OF_CONDUCT.md).## Licensing
For information on the project's license, please review the [LICENSE](/LICENSE) file.