Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Fix typo

...

IDIEP-87
Author
Sponsor
Created

 

Status

Status
colourGreyGreen
titleDRAFTCOMPLETED

Table of Contents

Motivation

...

The last point is important. Ignite 3 will definitely need to implement security protocols and strategies. Micronaut already has implementations for the most popular ones (OAuth2/OpenID, LDAP, etc), they are tested in production by a community and have a little chance to introduce a vulnerability to the server compering with our own implementation. All these standards are going to be implemented in Ignite 3.


Implementation example


Code Block
languagejava
titleRestComponent
@OpenAPIDefinition(
        info = @Info(
                title = "Ignite REST module",
                version = "3.0.0-alpha",
                license = @License(name = "Apache 2.0", url = "https://ignite.apache.org"),
                contact = @Contact(email = "dev@ignite.apache.org")
        )
)
@OpenAPIInclude(classes = {ClusterConfigurationController.class, NodeConfigurationController.class}) // include to openapi specification
public class RestComponent implements IgniteComponent {
    // ...

    public RestComponent(List<MicronautFactory> micronautFactories, RestConfiguration restConfiguration) {
        // register all factories in micronaut context
    }

    @Override
    public void start() {
       // start REST server
    }

...

MethodPathParametersDescription
GET/management/v1/topology/physical


Return physical cluster topology information(consistent ID, ID, address, status).


MethodPathParametersDescription
GET/management/v1/topology/logical


Return logical cluster topology information(consistent ID, ID, address, status).

Version REST API

Provide the build version for the node. 

MethodPathParametersDescription
GET/management/v1/node/version/


Return node build version in semver format.

...