The GBIF Registry is a core component of the architecture responsible for providing the authoritative source of information on GBIF participants (Nodes), institutions (e.g. data publishers), datasets, networks their interrelationships and the means to identify and access them.
As a distributed network, the registry serves a central coordination mechanism, used for example to allow publishers to declare their existence and for data integrating components to discover how to access published datasets and interoperate with the publisher.
The registry uses spotless-maven-plugin and google code style. Please check motherpom project for some important configuration.
Code style related files. Please make sure you properly configure required IDE settings:
- gbif.importorder overrides default google package import order (for spotless-maven-plugin).
- gbif-lecense-header provides default license header (for spotless-maven-plugin).
- google-style.xml java google code style, should be imported to IDE as a default one: Preferences --> Editor --> Code Style --> Import scheme (gear next to 'Scheme' dropdown) --> Intellij IDEA code style XML.
- .editorconfig formatting properties which overrides some inconvenient google ones (e.g. static imports at the beginning of imports list). Make sure editorconfig file is enabled in IDE: Preferences --> Editor --> Code Style --> General --> Enable EditorConfig support.
To configure automatic git hook to check the code, add the file pre-commit to the directory .git/hooks:
cp pre-commit .git/hooks/
Also, make sure the file has the right permissions. In Unix and Mac it needs the execution permission:
chmod +x .git/hooks/pre-commit
Check the project follows code style conventions:
mvn spotless:check
Fix code style violations:
mvn spotless:apply
Sometimes it may not help (e.g. it does not fix two empty lines but consider them as a violation). In this case run spotless check command above and fix them manually afterwards.
For more information see documentation.
Project modules:
- registry-cli
- registry-directory
- registry-directory-client
- registry-doi
- registry-domain
- registry-events
- registry-identity
- registry-integration-tests
- registry-mail
- registry-messaging
- registry-metadata
- registry-metasync
- registry-oaipmh
- registry-occurrence-client
- registry-persistence
- registry-pipelines
- registry-search
- registry-security
- registry-service
- registry-surety
- registry-ws
- registry-ws-client