Git Product home page Git Product logo

dao-series-api's Introduction

DAO Implementation of 52n Series REST API

series-rest-api architecture overview

Description

Provide database series data via 52n Series REST API.

This module is an SPI implementation of the 52°North Series REST API. It provides data access objects which access series data from relational databases. Using Hibernate the data model is not fixed to one specific.

The DAO module implements the Series API's Service Provider Interface (SPI). It serves as backend access layer to retrieve data from a relational database and to provide it via a well defined RESTful interface. Lightweight clients can then query and work with that series data easily in a common way (other data access mechanisms are available as well). Besides pure data access, the data can be preprocessed with common IO functionalities e.g.

  • prerendering of series data,
  • generalization,
  • overlaying of data from multiple series
  • conversion of raw data to other formats like pdf and png

Using Hibernate makes it flexible to use almost arbitrary data models, i.e. there is no need to have convert your data intot a specific data model. The combination of making adjustments to hbm.xml mapping files and database views (not always needed) make it possible to match existing databases quite well. The series data model of the 52°North SOS is used by default and can be used right out-of-the-box.

The following main frameworks are used to provide this API:

References

tbd

License

The module is published under the GNU General Public License v2 (GPLv2).

Changelog

Contributing

We try to follow the GitFlow model, although we do not see it that strict.

However, make sure to do pull requests for features, hotfixes, etc. by making use of GitFlow. Altlassian provides [a good overview] (https://www.atlassian.com/de/git/workflows#!workflow-gitflow). of the most common workflows.

Contact

Henning Bredel ([email protected])

Quick Start

Webapp Installation

  • tbd: deployment configuration
  • tbd: build from source
  • tbd: externalize config before build

Configuration

  • general config options
    • Generalizer
    • Prerendering
    • Date formatting
    • Rendering Hints
    • Status Intervals
    • Metadata from a Database

Logging

Depending on which build environment you've chosen open one the WEB-INF/classes/logback-{dev,ci,prod}.xml. Here you can edit log levels and log outputs.

Client development

Refer to the official Series REST API documentation to get a detailed overview on how to access the data provided by the API.

Credits

The development of the 52°North REST-API DAO implementation was supported by several organizations and projects. Among other we would like to thank the following organisations and project

Project/Logo Description
BMBFCOLABIS - Collaborative Early Warning Information Systems for Urban Infrastructures The development of this version of the 52°North SOS was supported by the German Federal Ministry of Education and Research research project COLABIS (co-funded by the German Federal Ministry of Education and Research, programme Geotechnologien, under grant agreement no. 03G0852A)
NeXOS - Next generation, Cost-effective, Compact, Multifunctional Web Enabled Ocean Sensor Systems Empowering Marine, Maritime and Fisheries Management The development of this version of the 52°North REST-API DAO was supported by the European FP7 research project NeXOS (co-funded by the European Commission under the grant agreement n°614102)
FixO3 - Fixed-Point Open Ocean Observatories The development of this version of the 52°North REST-API DAO was supported by the European FP7 research project FixO3 (co-funded by the European Commission under the grant agreement n°312463)
ODIP II - Ocean Data Interoperability Platform The development of this version of the 52°North REST-API DAO was supported by the Horizon 2020 research project ODIP II (co-funded by the European Commission under the grant agreement n°654310)
SeaDataCloud The development of this version of the 52°North REST-API DAO was supported by the Horizon 2020 research project SeaDataCloud (co-funded by the European Commission under the grant agreement n°730960)
Wupperverband The Wupperverband for water, humans and the environment (Germany)
Belgian Interregional Environment Agency (IRCEL - CELINE) The Belgian Interregional Environment Agency (IRCEL - CELINE) is active in the domain of air quality (modelling, forecasts, informing the public on the state of their air quality, e-reporting to the EU under the air quality directives, participating in scientific research on air quality, etc.). IRCEL — CELINE is a permanent cooperation between three regional environment agencies: Agence wallonne de l'Air et du Climat (AWAC), Bruxelles Environnement - Leefmilieu Brussel and Vlaamse Milieumaatschappij (VMM).
GEOWOW - GEOSS interoperability for Weather, Ocean and Water The development of this version of the 52°North SOS was supported by the European FP7 research project GEOWOW (co-funded by the European Commission under the grant agreement n°282915)

dao-series-api's People

Contributors

autermann avatar ehj-52n avatar janschulte avatar ridoo avatar speckij avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.