Skip to content

Latest commit

 

History

History
75 lines (63 loc) · 2.96 KB

README.md

File metadata and controls

75 lines (63 loc) · 2.96 KB

Orbit Framework

Release Maven Central Javadocs Build Status Gitter

Orbit is a modern framework for JVM languages that makes it easier to build and maintain distributed and scalable online services. It was developed by BioWare, a division of Electronic Arts. For the latest news, follow us on Twitter.

Orbit is primarily made up of the following components:

  • Orbit Actors, a framework to write distributed systems using virtual actors.
  • Orbit Async, async-await methods for the JVM.
  • Orbit Container, a minimal inversion of control container for building online services.
  • Orbit Utils, a set of utils to help simplify various tasks on the JVM.
  • Orbit Web, a lightweight HTTP and Websockets container for Orbit, powered by Jetty.
  • Orbit Commons, various common utilities used by Orbit.

Documentation

Documentation is located here.
See the Hello World sample.

License

Orbit is licensed under the BSD 3-Clause License.

The Orbit Team

Simple Examples

Actors - Java

public interface Hello extends Actor
{
    Task<String> sayHello(String greeting);
}
 
public class HelloActor extends AbstractActor implements Hello
{
    public Task<String> sayHello(String greeting)
    {
        getLogger().info("Here: " + greeting);
        return Task.fromValue("Hello There");
    }
}
 
Actor.getReference(Hello.class, "0").sayHello("Meep Meep");

Actors - Scala

trait Hello extends Actor {
  def sayHello(greeting: String): Task[String]
}

class HelloActor extends AbstractActor[AnyRef] with Hello {
  def sayHello(greeting: String): Task[String] = {
    getLogger.info("Here: " + greeting)
    Task.fromValue("Hello There")
  }
}

Actor.getReference(classOf[Hello], "0").sayHello("Meep Meep")