104 lines
4.0 KiB
Markdown
104 lines
4.0 KiB
Markdown
gCube CMS Suite : Catalogue Binding Plugin
|
||
--------------------------------------------------
|
||
|
||
The "Catalogue Binding Plugin" implements the binding from
|
||
(the products registered in) the Geoportal system to the D4Science Catalogue system.
|
||
|
||
## Built with
|
||
* [gCube SmartGears] (https://gcube.wiki.gcube-system.org/gcube/SmartGears) - The gCube SmartGears framework
|
||
* [OpenJDK](https://openjdk.java.net/) - The JDK used
|
||
* [Maven](https://maven.apache.org/) - Dependency Management
|
||
|
||
**Uses**
|
||
* Apache [FreeMarker](https://freemarker.apache.org/) is licensed under [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0)
|
||
|
||
## Documentation
|
||
[gCube CMS Suite](../) parent module containing references, documentation, guides ad utilities.
|
||
|
||
The "Catalogue Binding Plugin" requires a handler registered in the UCD so defined:
|
||
|
||
``` json
|
||
{
|
||
"_id": "Catalogue-Binding-Plugin",
|
||
"_type": "EventListener",
|
||
"_configuration": {
|
||
"subscribeEvents": [
|
||
{
|
||
"event": "{EVENT_1}",
|
||
"when": [
|
||
{
|
||
"target_phase": [
|
||
"{TARGET_PHASE}"
|
||
],
|
||
"last_invoked_step": "{LAST_INVOKED_STEP}"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"event": "{EVENT_2}"
|
||
}
|
||
],
|
||
"freemarker_template_host": "{FREEMARKER_TEMPLATE_HOST}",
|
||
"freemarker_template_path": "{PATH_TO_FREEMARKER_TEMPLATE_NAME.ftl}",
|
||
"enabled": {true|false}
|
||
}
|
||
}
|
||
```
|
||
|
||
About the config:
|
||
|
||
the "event" part.. `"event": "{EVENT_1}",` is mandatory:
|
||
|
||
* `{EVENT_X}` (mandatory) - can be ```PROJECT_CREATED, PROJECT_UPDATED, PROJECT_DELETED, LIFECYCLE_STEP_PERFORMED```
|
||
|
||
the "when" part.. `"when": [{...}]`, is optional:
|
||
|
||
* `{TARGET_PHASE}` (optional) - can be: `DRAFT`, `Pending Approval`, `Published`, `Any`;
|
||
* `{LAST_INVOKED_STEP}` (optional) can be: `SUBMIT-FOR-REVIEW`, `APPROVE-SUBMITTED`, `REJECT-DRAFT`, `UNPUBLISH`;
|
||
|
||
the `{FREEMARKER_TEMPLATE_HOST}` is the host where the FREEMARKER_TEMPLATE.ftl is located and the `{FREEMARKER_TEMPLATE_NAME.ftl}` is the (complete) path to the FREEMARKER_TEMPLATE.ftl file.
|
||
The template pointed by `{FREEMARKER_TEMPLATE_HOST}/{PATH_TO_FREEMARKER_TEMPLATE_NAME.ftl}` URL is applied to transform a Geoportal project to Catalogue Item object.
|
||
|
||
`enabled` : set to `ŧrue` to activate the plugin `false` otherwise.
|
||
|
||
NB. The configuration must contain the "when" part with `{TARGET_PHASE}` and `{LAST_INVOKED_STEP}` if the `{EVENT_X}` is `LIFECYCLE_STEP_PERFORMED`
|
||
|
||
## Change log
|
||
See [CHANGELOG.md](CHANGELOG.md).
|
||
|
||
## Authors
|
||
|
||
* **Francesco Mangiacrapa** ([ORCID](https://orcid.org/0000-0002-6528-664X)) Computer Scientist at [ISTI-CNR Infrascience Group](http://nemis.isti.cnr.it/groups/infrascience)
|
||
|
||
## License
|
||
This project is licensed under the EUPL V.1.1 License - see the [LICENSE.md](LICENSE.md) file for details.
|
||
|
||
## About the gCube Framework
|
||
This software is part of the [gCubeFramework](https://www.gcube-system.org/ "gCubeFramework"): an
|
||
open-source software toolkit used for building and operating Hybrid Data
|
||
Infrastructures enabling the dynamic deployment of Virtual Research Environments
|
||
by favouring the realisation of reuse oriented policies.
|
||
|
||
The projects leading to this software have received funding from a series of European Union programmes including:
|
||
|
||
- the Sixth Framework Programme for Research and Technological Development
|
||
- DILIGENT (grant no. 004260).
|
||
- the Seventh Framework Programme for research, technological development and demonstration
|
||
- D4Science (grant no. 212488);
|
||
- D4Science-II (grant no.239019);
|
||
- ENVRI (grant no. 283465);
|
||
- iMarine(grant no. 283644);
|
||
- EUBrazilOpenBio (grant no. 288754).
|
||
- the H2020 research and innovation programme
|
||
- SoBigData (grant no. 654024);
|
||
- PARTHENOS (grant no. 654119);
|
||
- EGIEngage (grant no. 654142);
|
||
- ENVRIplus (grant no. 654182);
|
||
- BlueBRIDGE (grant no. 675680);
|
||
- PerformFish (grant no. 727610);
|
||
- AGINFRAplus (grant no. 731001);
|
||
- DESIRA (grant no. 818194);
|
||
- ARIADNEplus (grant no. 823914);
|
||
- RISIS2 (grant no. 824091);
|
||
|