corda/docs
Viktor Kolomeyko 0978500a9a CORDA-2942: Node lifecycle events (#5846)
* CORDA-2942: Port minimal set of changes to make lifecycle events work

... and make codebase compile.

* CORDA-2942: Undo some changes which are not strictly speaking necessary

* CORDA-2942: Make `NodeServicesContext` leaner and delete `extensions-api` module

* CORDA-2942: Reduce even more number of files affected

* CORDA-2942: Integration test fix

* CORDA-2942: Make events `AfterStart` and `BeforeStop` generic w.r.t. `NodeServicesContext`

* CORDA-2942: `NodeLifecycleObserverService` and a set of integration tests.

Public API violations are expected as well as integration tests failing.

* CORDA-2942: Re-work to introduce `ServiceLifecycleObserver`

* CORDA-2942: Explicitly mention a type of exception that may be thrown for some events.

* CORDA-2942: Register `ServiceLifecycleObserver` through `AppServiceHub`

* CORDA-2942: Fix integration test + KDocs update

* CORDA-2942: Detekt and `api-current` update

* CORDA-2942: Improvement to `CordaServiceLifecycleFatalTests`

... or else it has side effects on other tests.

* CORDA-2942: Add an integration test for new API use in Java

Driver test is written in Kotlin, but services definition is written in Java.

Also KDocs improvements.

* CORDA-2942: Documentation and release notes update

* CORDA-2942: First set of changes following review by @mnesbit

* CORDA-2942: Second set of changes following review by @mnesbit

* CORDA-2942: Added multi-threaded test

* CORDA-2942: Fixes

* CORDA-2942: Undo changes to `api-current.txt`

* CORDA-2942: Bare mimimum change to `api-current.txt` for CI gate to pass.

* CORDA-2942: Address review feedback from @rick-r3

* CORDA-2942: Detekt update

* CORDA-2942: Delete `ServiceLifecycleObserverPriority` and replace it with `Int` after discussion with @mnesbit

* CORDA-2942: Introduce more `NodeLifecycleEvent` and switch services to listen for those events

* CORDA-2942: Few more changes after input from @rick-r3

* First stub on integration test
Unfinished - hang on issue and pay

* CORDA-2942: Switch to use out-of-process nodes for the inetgration test

Currently Alice and Notary stuck waiting to hear from each other.

* CORDA-2942: Extra log lines during event distribution

* CORDA-2942: Asynchronously distribute lifecycle events

* CORDA-2942: Await for complete P2P client start-up

Next step: Add vault query to integration test

* CORDA-2942: Asynchronously distribute lifecycle events

Next step: Improve integration test

* CORDA-2942: Fix test broken by recent changes and improve logging

* CORDA-2942: Improvement of the test to be able to monitor actions performed by @CordaService in the remote process

* CORDA-2942: Add node re-start step to the integration test

* CORDA-2942: Remove `CORDAPP_STOPPED` event for now

* CORDA-2942: s/CORDAPP_STARTED/STATE_MACHINE_STARTED/

* CORDA-2942: Inverse the meaning of `priority` as requested by @rick-r3

* CORDA-2942: Register `AppServiceHubImpl` for lifecycle events and put a warning when SMM is not ready.
2020-01-21 13:38:02 +00:00
..
docs_builder Document warning cleanup + new version of docs builder 2019-04-11 13:43:47 +00:00
ext CORDA-1585 - Tidy up participate docs + pdf toctree backport (#3674) 2018-07-24 10:05:57 +01:00
source CORDA-2942: Node lifecycle events (#5846) 2020-01-21 13:38:02 +00:00
.gitattributes dockerize docs building 2019-01-30 15:33:46 +00:00
.gitignore CORDA-1585 - Tidy up participate docs + pdf toctree backport (#3674) 2018-07-24 10:05:57 +01:00
build.gradle updated jackson-core api documentation to 2.9 2019-05-08 11:48:09 +02:00
index.html Added a convenience HTML file for redirecting to the main docs. 2016-11-22 11:56:46 +00:00
install-docsite-requirements.sh Make virtualenv installable if the checkout path has whitespace. (#1187) 2017-08-18 13:31:00 +01:00
make-docsite.sh turned of latex warnings so that we can see the warnings wood for the trees (#4956) 2019-03-29 15:43:01 +00:00
Makefile [CORDA-1612]: Fix truncated code snippets in docs PDF (#3347) 2018-06-13 09:43:16 +01:00
packages.md [CORDA-1035] Testing api KDoc Updates (#2584) 2018-02-28 13:26:49 +00:00
README.md Fix corda docker image names in docs (#5606) 2019-10-18 10:46:59 +01:00
requirements.txt Bump pillow from 5.1.0 to 6.2.0 in /docs (#5632) 2019-10-30 16:37:59 +00:00

Corda Documentation Build

This Readme describes how to build the Corda documentation for the current version. The output html files will be written to the corda\docs\build\html directory.

Prerequisites / First time build

Before you begin, you need to:

  1. Install Docker.
  2. Ensure that Docker is running.
  3. Select Expose daemon on tcp://localhost:2375 without TLS in the Docker Settings (which you can open from the System Tray by right-clicking the Docker symbol and then selecting Settings)

Build process

  1. Open a cmd dialogue.
  2. Navigate to the root location (this is the \corda directory)
  3. Run the documentation build (gradlew makeDocs or ./gradlew makeDocs)

Windows users: If this task fails because Docker can't find make-docsite.sh, go to Settings > Shared Drives in the Docker system tray agent, make sure the relevant drive is shared, and click 'Reset credentials'.

RST style guide

The Corda documentation is described using the ReStructured Text (RST) markup language. For details of the syntax, see this.

Version placeholders

We currently support the following placeholders; they get substituted with the correct value at build time:

    "|corda_version|" 
    "|corda_version_lower|" 
    "|java_version|" 
    "|kotlin_version|" 
    "|gradle_plugins_version|" 
    "|quasar_version|"

If you put one of these in an rst file anywhere (including in a code tag), it will be substituted with the value from constants.properties (which is in the root of the project) at build time. corda_version_lower returns the current Corda version in lowercase which is useful for case sensitive artifacts such as docker images.

The code for this can be found near the top of the conf.py file in the docs/source directory.