baratine-js
Baratine Java Script Library
Baratine-js is client library for invoking Baratine Services build using Baratine™.
Baratine™ is a Java platform providing a new approach for building web services.
A service is comprised of:
- Data
- Code
- A thread
- An API/Interface
The service-oriented model of Baratine simplifies creating and maintaining high performance web services that are distributed by design.
Querying
Given a service defined as
package example;
import java.io.*;
import io.baratine.core.*;
import test.*;
@Service("public:///test")
public class Test {
public void test(String value, Result<String> result)
{
result.complete("test[" + value + "]");
}
}
baratine-js can make calls to the service using
var client = new Jamp.BaratineClient("http://localhost:8084/s/pod");
client.query("/test", "test", ["foo"], function(data) {
console.log("success: " + data);
});
The output would be:
success: test["foo"]
Streaming
Giving the following service:
package example;
import java.io.*;
import io.baratine.core.*;
import test.*;
@Service("public:///test")
public class Test {
public void helloStream(String value, ResultStream<String> result)
{
result.accept("hello " + value);
result.accept("bye : " + value);
result.complete();
}
}
Then your JavaScript clients can stream from your service with:
var client = new Jamp.BaratineClient("ws://localhost:8085/s/pod");
var callback = function(data) {
console.log("received: " + data);
};
// optional
callback.onfail = function(data) {
console.log("error: " + data);
};
// optional
callback.oncomplete = function() {
console.log("completed");
};
client.stream("/test", "helloStream", ["foo"], callback);
The output would be:
received: hello foo
received: bye foo
completed
Baratine Distribution
Latest distribution of Baratine can be obtained from http://baratine.io