forked from ORCID/ORCID-Source
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
a6e54cf
commit c37e46c
Showing
273 changed files
with
43,187 additions
and
43,187 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 |
---|---|---|
@@ -1,47 +1,47 @@ | ||
# How To Create a New API Version | ||
|
||
## The public API | ||
|
||
Look for a recent service bean in orcid-t1-web-context.xml. For example, t1OrcidApiServiceImplV1_2_rc1. | ||
|
||
Create a new bean definition for your new API version, similar to the existing one. Set the external version property of the bean to your new version number. | ||
|
||
If you want your new API version to be served on the root URL, then update the external version property of t1OrcidApiServiceImplRoot to your version number. | ||
|
||
# How To Create a New API Version | ||
|
||
## The public API | ||
|
||
Look for a recent service bean in orcid-t1-web-context.xml. For example, t1OrcidApiServiceImplV1_2_rc1. | ||
|
||
Create a new bean definition for your new API version, similar to the existing one. Set the external version property of the bean to your new version number. | ||
|
||
If you want your new API version to be served on the root URL, then update the external version property of t1OrcidApiServiceImplRoot to your version number. | ||
|
||
Create a new class for your new API version. See existing classes, such as T1OrcidApiServiceImplV1_2_rc1. | ||
|
||
There is no longer any need to configure a service delegator and validation manager. It is done automcatically by the base service class. | ||
|
||
You now have a new version of the public API configured! | ||
|
||
## The member API | ||
|
||
Look for a recent service bean in orcid-api-web-context.xml. For example, t2OrcidApiServiceImplV1_2_rc1. | ||
|
||
Create a new bean definition for your new API version, similar to the existing one. Set the external version property of the bean to your new version number. | ||
|
||
If you want your new API version to be served on the root URL, then update the external version property of t2OrcidApiServiceImplRoot to your version number. | ||
|
||
There is no longer any need to configure a service delegator and validation managers. It is done automcatically by the base service class. | ||
|
||
Create a new class for your API version. See existing classes such as T2OrcidApiServiceImplV1_2_rc1. | ||
|
||
You now have a new version of the member API configured! | ||
|
||
## Maintain backwards compatibility | ||
|
||
To maintain backwards compatibility, you will have to be able to convert between your new version, to the version immediately before. | ||
|
||
See for example, OrcidMessageVersionConverterImplV1_0_14ToV1_0_15. | ||
|
||
Then add your converter to orcidMessageVersionConverterChain bean in orcid-core-context.xml. | ||
|
||
Well done! | ||
|
||
## Additional info | ||
|
||
There is a class diagram of the versioned public API. | ||
|
||
[http://www.gliffy.com/go/publish/4685870](http://www.gliffy.com/go/publish/4685870) | ||
|
||
The class structure for the member API is similar. | ||
There is no longer any need to configure a service delegator and validation manager. It is done automcatically by the base service class. | ||
|
||
You now have a new version of the public API configured! | ||
|
||
## The member API | ||
|
||
Look for a recent service bean in orcid-api-web-context.xml. For example, t2OrcidApiServiceImplV1_2_rc1. | ||
|
||
Create a new bean definition for your new API version, similar to the existing one. Set the external version property of the bean to your new version number. | ||
|
||
If you want your new API version to be served on the root URL, then update the external version property of t2OrcidApiServiceImplRoot to your version number. | ||
|
||
There is no longer any need to configure a service delegator and validation managers. It is done automcatically by the base service class. | ||
|
||
Create a new class for your API version. See existing classes such as T2OrcidApiServiceImplV1_2_rc1. | ||
|
||
You now have a new version of the member API configured! | ||
|
||
## Maintain backwards compatibility | ||
|
||
To maintain backwards compatibility, you will have to be able to convert between your new version, to the version immediately before. | ||
|
||
See for example, OrcidMessageVersionConverterImplV1_0_14ToV1_0_15. | ||
|
||
Then add your converter to orcidMessageVersionConverterChain bean in orcid-core-context.xml. | ||
|
||
Well done! | ||
|
||
## Additional info | ||
|
||
There is a class diagram of the versioned public API. | ||
|
||
[http://www.gliffy.com/go/publish/4685870](http://www.gliffy.com/go/publish/4685870) | ||
|
||
The class structure for the member API is similar. |
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 |
---|---|---|
@@ -1,21 +1,21 @@ | ||
# POPULAR CLIENT LIBRARIES | ||
List of popular API client libraries. Please feel free to add to the list below. | ||
|
||
## Java | ||
|
||
* [ORCID Example Client Application (JOPMTS)](https://github.com/ORCID/ORCID-Example-Client-Application). | ||
|
||
* [ORCID client library written in java. Lightwieght, easy to use, with the complete ORCID message schema modelled as POJOs](https://github.com/TomDemeranville/orcid-java-client) | ||
|
||
## PHP | ||
|
||
* [WordPress plugin that displays ORCIDs in comments and posts](https://github.com/ServerDotBiz/orcid) | ||
|
||
## PYTHON | ||
|
||
* [A simple wrapper around the ORCID.org API.](https://github.com/scholrly/orcid-python) | ||
|
||
## RUBY | ||
|
||
* [A Rails engine for orcid.org integration](https://github.com/projecthydra-labs/orcid) | ||
|
||
# POPULAR CLIENT LIBRARIES | ||
List of popular API client libraries. Please feel free to add to the list below. | ||
|
||
## Java | ||
|
||
* [ORCID Example Client Application (JOPMTS)](https://github.com/ORCID/ORCID-Example-Client-Application). | ||
|
||
* [ORCID client library written in java. Lightwieght, easy to use, with the complete ORCID message schema modelled as POJOs](https://github.com/TomDemeranville/orcid-java-client) | ||
|
||
## PHP | ||
|
||
* [WordPress plugin that displays ORCIDs in comments and posts](https://github.com/ServerDotBiz/orcid) | ||
|
||
## PYTHON | ||
|
||
* [A simple wrapper around the ORCID.org API.](https://github.com/scholrly/orcid-python) | ||
|
||
## RUBY | ||
|
||
* [A Rails engine for orcid.org integration](https://github.com/projecthydra-labs/orcid) | ||
|
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 |
---|---|---|
@@ -1,21 +1,21 @@ | ||
# POPULAR CLIENT LIBRARIES | ||
List of popular API client libraries. Please feel free to add to the list below. | ||
|
||
## Java | ||
|
||
* [ORCID Example Client Application (JOPMTS)](https://github.com/ORCID/ORCID-Example-Client-Application). | ||
|
||
* [ORCID client library written in java. Lightwieght, easy to use, with the complete ORCID message schema modelled as POJOs](https://github.com/TomDemeranville/orcid-java-client) | ||
|
||
## PHP | ||
|
||
* [WordPress plugin that displays ORCIDs in comments and posts](https://github.com/ServerDotBiz/orcid) | ||
|
||
## PYTHON | ||
|
||
* [A simple wrapper around the ORCID.org API.](https://github.com/scholrly/orcid-python) | ||
|
||
## RUBY | ||
|
||
* [A Rails engine for orcid.org integration](https://github.com/projecthydra-labs/orcid) | ||
|
||
# POPULAR CLIENT LIBRARIES | ||
List of popular API client libraries. Please feel free to add to the list below. | ||
|
||
## Java | ||
|
||
* [ORCID Example Client Application (JOPMTS)](https://github.com/ORCID/ORCID-Example-Client-Application). | ||
|
||
* [ORCID client library written in java. Lightwieght, easy to use, with the complete ORCID message schema modelled as POJOs](https://github.com/TomDemeranville/orcid-java-client) | ||
|
||
## PHP | ||
|
||
* [WordPress plugin that displays ORCIDs in comments and posts](https://github.com/ServerDotBiz/orcid) | ||
|
||
## PYTHON | ||
|
||
* [A simple wrapper around the ORCID.org API.](https://github.com/scholrly/orcid-python) | ||
|
||
## RUBY | ||
|
||
* [A Rails engine for orcid.org integration](https://github.com/projecthydra-labs/orcid) | ||
|
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 |
---|---|---|
@@ -1,52 +1,52 @@ | ||
# ORCID-Source | ||
|
||
Welcome to ORCID Source. Here are some resources to get you started. | ||
|
||
* [What is ORCID?](http://orcid.org/about/what-is-orcid) | ||
|
||
* [ORCID Source Technical Community](http://orcid.org/about/community/orcid-technical-community) | ||
|
||
* [ORCID Source Wiki](https://github.com/ORCID/ORCID-Source/wiki) | ||
|
||
* [ORCID's Public API](https://github.com/ORCID/ORCID-Source/tree/master/orcid-pub-web) | ||
|
||
* [ORCID's Member API](https://github.com/ORCID/ORCID-Source/tree/master/orcid-api-web) | ||
|
||
* [POPULAR CLIENT LIBRARIES](https://github.com/ORCID/ORCID-Source/blob/master/POPULAR_CLIENT_LIBRARIES.md) | ||
|
||
* [ORCID's API XSD - API message](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources) | ||
|
||
* [ORCID's Localization Reference](https://github.com/ORCID/ORCID-Source/tree/master/orcid-core/src/main/resources/i18n) | ||
|
||
|
||
# Getting Support | ||
|
||
If you are experience problems using ORCID you can check our [help page](http://orcid.org/help). | ||
|
||
# General Application Stack | ||
|
||
ORCID Source is set of web apps and libraries built in [Java](http://en.wikipedia.org/wiki/Java_%28programming_language%29) with [Spring Web MVC](http://www.springsource.org/) and persistence provided by [Postgres Database](http://www.postgresql.org/). | ||
|
||
Frontend Technologies (brief version): | ||
On the client side we utilize [HTML](http://www.w3schools.com/html/default.asp), [AJAX](http://en.wikipedia.org/wiki/Ajax_%28programming%29), [JQuery](http://jquery.com/) and [AngularJS](http://angularjs.org/). Server side we use [FreeMarker](http://freemarker.sourceforge.net/) for view rendering. | ||
|
||
Backend Technologies (brief version): | ||
[Spring Web MVC](http://www.springsource.org/) is our web framework. For security we use [Spring Security](http://www.springsource.org/). Our restful services are built with [Jersey](http://jersey.java.net/) and [JAXB](http://jaxb.java.net/). Finally we use [JPA](http://www.oracle.com/technetwork/java/javaee/tech/persistence-jsp-140049.html)/[Hibernate](http://www.hibernate.org/) to persist models to a [Postgres Database](http://www.postgresql.org/) database. | ||
|
||
The above is just a brief introduction. Best way to see everything used is to dig into the code, but baring that please browse our [PROJECTS](https://github.com/ORCID/ORCID-Source/blob/master/PROJECTS.md) page. | ||
|
||
|
||
# Contributing | ||
Pull requests are welcome; See [CONTRIBUTING.md](CONTRIBUTING.md) | ||
|
||
# Development Environment Setup | ||
See [DEVSETUP.md](https://github.com/ORCID/ORCID-Source/blob/master/DEVSETUP.md) | ||
|
||
# License | ||
See [LICENSE.md](https://github.com/ORCID/ORCID-Source/blob/master/LICENSE.md) | ||
|
||
# Contributors | ||
See [CREDITS.md](https://github.com/ORCID/ORCID-Source/blob/master/CREDITS.md) | ||
|
||
# Projects | ||
See [PROJECTS.md](https://github.com/ORCID/ORCID-Source/blob/master/PROJECTS.md) | ||
# ORCID-Source | ||
|
||
Welcome to ORCID Source. Here are some resources to get you started. | ||
|
||
* [What is ORCID?](http://orcid.org/about/what-is-orcid) | ||
|
||
* [ORCID Source Technical Community](http://orcid.org/about/community/orcid-technical-community) | ||
|
||
* [ORCID Source Wiki](https://github.com/ORCID/ORCID-Source/wiki) | ||
|
||
* [ORCID's Public API](https://github.com/ORCID/ORCID-Source/tree/master/orcid-pub-web) | ||
|
||
* [ORCID's Member API](https://github.com/ORCID/ORCID-Source/tree/master/orcid-api-web) | ||
|
||
* [POPULAR CLIENT LIBRARIES](https://github.com/ORCID/ORCID-Source/blob/master/POPULAR_CLIENT_LIBRARIES.md) | ||
|
||
* [ORCID's API XSD - API message](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources) | ||
|
||
* [ORCID's Localization Reference](https://github.com/ORCID/ORCID-Source/tree/master/orcid-core/src/main/resources/i18n) | ||
|
||
|
||
# Getting Support | ||
|
||
If you are experience problems using ORCID you can check our [help page](http://orcid.org/help). | ||
|
||
# General Application Stack | ||
|
||
ORCID Source is set of web apps and libraries built in [Java](http://en.wikipedia.org/wiki/Java_%28programming_language%29) with [Spring Web MVC](http://www.springsource.org/) and persistence provided by [Postgres Database](http://www.postgresql.org/). | ||
|
||
Frontend Technologies (brief version): | ||
On the client side we utilize [HTML](http://www.w3schools.com/html/default.asp), [AJAX](http://en.wikipedia.org/wiki/Ajax_%28programming%29), [JQuery](http://jquery.com/) and [AngularJS](http://angularjs.org/). Server side we use [FreeMarker](http://freemarker.sourceforge.net/) for view rendering. | ||
|
||
Backend Technologies (brief version): | ||
[Spring Web MVC](http://www.springsource.org/) is our web framework. For security we use [Spring Security](http://www.springsource.org/). Our restful services are built with [Jersey](http://jersey.java.net/) and [JAXB](http://jaxb.java.net/). Finally we use [JPA](http://www.oracle.com/technetwork/java/javaee/tech/persistence-jsp-140049.html)/[Hibernate](http://www.hibernate.org/) to persist models to a [Postgres Database](http://www.postgresql.org/) database. | ||
|
||
The above is just a brief introduction. Best way to see everything used is to dig into the code, but baring that please browse our [PROJECTS](https://github.com/ORCID/ORCID-Source/blob/master/PROJECTS.md) page. | ||
|
||
|
||
# Contributing | ||
Pull requests are welcome; See [CONTRIBUTING.md](CONTRIBUTING.md) | ||
|
||
# Development Environment Setup | ||
See [DEVSETUP.md](https://github.com/ORCID/ORCID-Source/blob/master/DEVSETUP.md) | ||
|
||
# License | ||
See [LICENSE.md](https://github.com/ORCID/ORCID-Source/blob/master/LICENSE.md) | ||
|
||
# Contributors | ||
See [CREDITS.md](https://github.com/ORCID/ORCID-Source/blob/master/CREDITS.md) | ||
|
||
# Projects | ||
See [PROJECTS.md](https://github.com/ORCID/ORCID-Source/blob/master/PROJECTS.md) |
Oops, something went wrong.