Search in sources :

Example 26 with Slime

use of com.yahoo.slime.Slime in project vespa by vespa-engine.

the class ConfigPayloadBuilderTest method createSlime.

private Cursor createSlime(ConfigPayloadBuilder builder) {
    Slime slime = new Slime();
    Cursor root = slime.setObject();
    builder.resolve(root);
    return root;
}
Also used : Slime(com.yahoo.slime.Slime) Cursor(com.yahoo.slime.Cursor)

Example 27 with Slime

use of com.yahoo.slime.Slime in project vespa by vespa-engine.

the class ConfigPayloadBuilderTest method require_that_builder_can_be_created_from_payload.

@Test
public void require_that_builder_can_be_created_from_payload() throws IOException {
    Slime slime = new Slime();
    Cursor root = slime.setObject();
    root.setString("foo", "bar");
    Cursor obj = root.setObject("foorio");
    obj.setString("bar", "bam");
    Cursor obj2 = obj.setObject("bario");
    obj2.setString("bim", "bul");
    Cursor a2 = obj.setArray("blim");
    Cursor arrayobj = a2.addObject();
    arrayobj.setString("fim", "fam");
    Cursor arrayobj2 = a2.addObject();
    arrayobj2.setString("blim", "blam");
    Cursor a1 = root.setArray("arrio");
    a1.addString("himbio");
    ConfigPayloadBuilder builder = new ConfigPayloadBuilder(new ConfigPayload(slime));
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    ConfigPayload.fromBuilder(builder).serialize(baos, new JsonFormat(true));
    assertThat(baos.toString(), is("{\"foo\":\"bar\",\"foorio\":{\"bar\":\"bam\",\"bario\":{\"bim\":\"bul\"},\"blim\":[{\"fim\":\"fam\"},{\"blim\":\"blam\"}]},\"arrio\":[\"himbio\"]}"));
}
Also used : JsonFormat(com.yahoo.slime.JsonFormat) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Slime(com.yahoo.slime.Slime) Cursor(com.yahoo.slime.Cursor) Test(org.junit.Test)

Example 28 with Slime

use of com.yahoo.slime.Slime in project vespa by vespa-engine.

the class DefaultValueApplierTest method apply.

public Slime apply(String... extraFields) {
    Slime slime = new Slime();
    slime.setObject();
    return apply(slime, extraFields);
}
Also used : Slime(com.yahoo.slime.Slime)

Example 29 with Slime

use of com.yahoo.slime.Slime in project vespa by vespa-engine.

the class DefaultValueApplierTest method require_that_arrays_of_struct_fields_defaults_when_empty.

@Test
public void require_that_arrays_of_struct_fields_defaults_when_empty() {
    Slime payload = new Slime();
    payload.setObject();
    Slime slime = apply(payload, "nestedarr[].foo string", "nestedarr[].bar string default=\"bim\"");
    assertTrue(slime.get().field("nestedarr").valid());
    assertThat(slime.get().field("nestedarr").entries(), is(0));
    assertThat(slime.get().field("nestedarr").type(), is(Type.ARRAY));
}
Also used : Slime(com.yahoo.slime.Slime) Test(org.junit.Test)

Example 30 with Slime

use of com.yahoo.slime.Slime in project vespa by vespa-engine.

the class ContentHandler method createResponse.

private HttpResponse createResponse(ContentRequest request) {
    Slime slime = new Slime();
    Cursor root = slime.setObject();
    root.setString("prepared", request.getUrlBase("/prepared"));
    return new SessionResponse(slime, root);
}
Also used : Slime(com.yahoo.slime.Slime) Cursor(com.yahoo.slime.Cursor)

Aggregations

Slime (com.yahoo.slime.Slime)131 Cursor (com.yahoo.slime.Cursor)76 Test (org.junit.Test)43 ByteArrayOutputStream (java.io.ByteArrayOutputStream)23 SlimeJsonResponse (com.yahoo.vespa.hosted.controller.restapi.SlimeJsonResponse)22 DefParser (com.yahoo.config.codegen.DefParser)14 InnerCNode (com.yahoo.config.codegen.InnerCNode)14 StringReader (java.io.StringReader)14 JsonFormat (com.yahoo.slime.JsonFormat)10 ApplicationId (com.yahoo.config.provision.ApplicationId)9 Inspector (com.yahoo.slime.Inspector)9 Application (com.yahoo.vespa.hosted.controller.Application)9 SlimeAdapter (com.yahoo.data.access.slime.SlimeAdapter)8 IOException (java.io.IOException)8 Version (com.yahoo.component.Version)7 JsonDecoder (com.yahoo.slime.JsonDecoder)6 ConfigPayload (com.yahoo.vespa.config.ConfigPayload)6 HttpResponse (com.yahoo.container.jdisc.HttpResponse)5 DeployLogger (com.yahoo.config.application.api.DeployLogger)4 TenantName (com.yahoo.config.provision.TenantName)4