An open API service indexing awesome lists of open source software.

https://github.com/technige/boltstream

API definitions for Neo4j Bolt drivers
https://github.com/technige/boltstream

Last synced: 23 days ago
JSON representation

API definitions for Neo4j Bolt drivers

Awesome Lists containing this project

README

          

# Client API for Neo4j Bolt Protocol

The interfaces in this repository describe layers of API for Neo4j Bolt drivers.
At the lowest level is the protocol-idiomatic *Connector API* which is based on the reactive stream model.
Above that, language and framework idiomatic *Application API* are defined.

## Connector API

```java
public interface Connection
{
void run( String statement, Map parameters, Handler handler );

void discard( long n, Handler handler );

void discardAll( Handler handler );

void pull( long n, StreamHandler handler );

void pullAll( StreamHandler handler );

void go();

}
```

```java
public interface Handler
{
void onSuccess( Map metadata );

void onIgnored( Map metadata );

void onFailure( Map metadata );

}

public interface StreamHandler extends Handler
{
void onAvailable( Stream stream );

void onRecord( Object[] record );

void onMore( Map metadata );

}
```

```java
public interface Stream
{
void discard( long n );

void discardAll();

void pull( long n );

void pullAll();

}
```

## Application API

_TODO_