graalson

Javax.JSON EE bindings for graaljs

License

License

Categories

Categories

Graal
GroupId

GroupId

biz.mofokom
ArtifactId

ArtifactId

graalson
Last Version

Last Version

1.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

graalson
Javax.JSON EE bindings for graaljs
Project URL

Project URL

https://github.com/warrenc5/graalson
Source Code Management

Source Code Management

https://github.com/warrenc5/graalson

Download graalson

How to add to project

<!-- https://jarcasting.com/artifacts/biz.mofokom/graalson/ -->
<dependency>
    <groupId>biz.mofokom</groupId>
    <artifactId>graalson</artifactId>
    <version>1.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/biz.mofokom/graalson/
implementation 'biz.mofokom:graalson:1.0.1'
// https://jarcasting.com/artifacts/biz.mofokom/graalson/
implementation ("biz.mofokom:graalson:1.0.1")
'biz.mofokom:graalson:jar:1.0.1'
<dependency org="biz.mofokom" name="graalson" rev="1.0.1">
  <artifact name="graalson" type="jar" />
</dependency>
@Grapes(
@Grab(group='biz.mofokom', module='graalson', version='1.0.1')
)
libraryDependencies += "biz.mofokom" % "graalson" % "1.0.1"
[biz.mofokom/graalson "1.0.1"]

Dependencies

compile (7)

Group / Artifact Type Version
org.slf4j : slf4j-simple jar 2.0.0-alpha0
org.slf4j : slf4j-api jar 2.0.0-alpha0
org.junit.jupiter : junit-jupiter-api jar 5.4.0
org.junit.jupiter : junit-jupiter-engine jar 5.4.0
org.hamcrest : hamcrest-all jar 1.3
org.graalvm.truffle : truffle-api jar 21.1.0
javax : javaee-api jar 7.0

test (1)

Group / Artifact Type Version
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

graalson

Javax.JSON EE bindings for graaljs

Common pattern to access JSON capabilities directly on graal vm.

    JsonProvider provider = JsonProvider.provider();
    URL test = GraalsonTest.class.getResource("/default.json");
    Reader scriptReader = Files.newBufferedReader(Paths.get(test.toURI()));
    JsonReader reader = Json.createReader(scriptReader);
    JsonObject jsonObject = reader.readObject();
    javax.script.Bindings result = (Bindings) new JsonObjectBindings(jsonObject);
    System.out.println(result.toString());

    Writer writer = new OutputStreamWriter(System.out);
    JsonWriter jwriter = Json.createWriter(writer);
    jwriter.write(jsonObject);

Load from json resource

    {
         "firstName": "John", "lastName": "Smith", "age": 25,
         "address" : {
             "streetAddress": "21 2nd Street",
             "city": "New York",
             "state": "NY",
             "postalCode": "10021"
         },
         "phoneNumber": [
             { "type": "home", "number": "212 555-1234" },
             { "type": "fax", "number": "646 555-4567" }
         ]
    }

Or build from objects

     JsonBuilderFactory factory = Json.createBuilderFactory(config);
     JsonObject value = factory.createObjectBuilder()
         .add("firstName", "John")
         .add("lastName", "Smith")
         .add("age", 25)
         .add("address", factory.createObjectBuilder()
             .add("streetAddress", "21 2nd Street")
             .add("city", "New York")
             .add("state", "NY")
             .add("postalCode", "10021"))
         .add("phoneNumber", factory.createArrayBuilder()
             .add(factory.createObjectBuilder()
                 .add("type", "home")
                 .add("number", "212 555-1234"))
             .add(factory.createObjectBuilder()
                 .add("type", "fax")
                 .add("number", "646 555-4567")))
         .build();

Add dependency

    <dependency>
        <groupId>biz.mofokom</groupId>
        <artifactId>graalson</artifactId>
        <version>1.0.1</version>
    </dependency>

Versions

Version
1.0.1