[wso2con eu 2017] an overview of ballerina composer

Post on 21-Jan-2018

145 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Architect/Associate Director, WSO2

An Overview of Ballerina Composer

Joseph Fonseka

Ballerina is a textual and a graphical language.

2

Why graphical ?

3

Java

Ballerinafunction main(string[] args) { endpoint<http:HttpClient > UserAPI { create http:HttpClient("http://londoni.com/users",{}); } endpoint<http:HttpClient > EmployeeAPI { create ttp:HttpClient("http://londoni.com/employe",{}); } http:Response person; http:Request employee; person,_ = UserAPI.get(args[0], {}); employee.setStringPayload(person.getStringPayload()); _,_ = EmployeeAPI.post(args[1], employee);}

Ballerina Visually

Graphical Syntax

7

Function

Statement

Block Statement

Workers

Worker Messaging

Endpoint

Service

Struct

Composer is a tool to editBallerina programs graphically and

textually

16

• Comes with Ballerina tools distribution

• Run composer with the following command– <ballerina_home>/bin/composer

• Access http://localhost:9091 in your browser

How to Install ?

Composer

Components

Graphical Editor

• Constructs– Services & Main– Top Level constructs– Statements

• Current Package• Connectors• Library

Tool Palette

Textual Editor

Split View

Swagger Editor ( API Design )

Transformer

• Language Server Protocol implementation for Ballerina.– https://langserver.org/

Ballerina Language Server

• Code completion– In scope variables– Functions– Connectors & Actions– Keywords

• Code snippet support

Language Server Features

Launcher

Try It

Debugger

Ballerina Composer on Cloud

31

Composer on Cloud

• Complete the Language server to work with other clients. ( ie. VSCode, Eclipse )

• Built in tools for special integration scenarios ( ie. Data Integration )

• Ship with electron and will work as a desktop editor.

Future

• GitHub – https://github.com/ballerinalang/composer

• More Info– https://ballerinalang.org/

• Technologies.

Contribute

ReactJS

Images from https://en.wikipedia.org

wso2.com

35

top related