Search in sources :

Example 41 with Cursor

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

the class ApplicationApiHandler method serviceInfosToSlime.

private void serviceInfosToSlime(List<ServiceInfo> serviceInfoList, Cursor array) {
    for (ServiceInfo serviceInfo : serviceInfoList) {
        Cursor serviceInfoObject = array.addObject();
        serviceInfoObject.setString("serviceName", serviceInfo.serviceName);
        serviceInfoObject.setString("serviceType", serviceInfo.serviceType);
        serviceInfoObject.setString("configId", serviceInfo.configId);
        serviceInfoObject.setString("hostName", serviceInfo.hostName);
    }
}
Also used : ServiceInfo(com.yahoo.vespa.hosted.controller.api.application.v4.model.configserverbindings.ServiceInfo) Cursor(com.yahoo.slime.Cursor)

Example 42 with Cursor

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

the class ApplicationApiHandler method tenants.

private HttpResponse tenants(HttpRequest request) {
    Slime slime = new Slime();
    Cursor response = slime.setArray();
    for (Tenant tenant : controller.tenants().asList()) tenantInTenantsListToSlime(tenant, request.getUri(), response.addObject());
    return new SlimeJsonResponse(slime);
}
Also used : Tenant(com.yahoo.vespa.hosted.controller.api.Tenant) SlimeJsonResponse(com.yahoo.vespa.hosted.controller.restapi.SlimeJsonResponse) Slime(com.yahoo.slime.Slime) Cursor(com.yahoo.slime.Cursor)

Example 43 with Cursor

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

the class ApplicationSerializer method toSlime.

// ------------------ Serialization
public Slime toSlime(Application application) {
    Slime slime = new Slime();
    Cursor root = slime.setObject();
    root.setString(idField, application.id().serializedForm());
    root.setString(deploymentSpecField, application.deploymentSpec().xmlForm());
    root.setString(validationOverridesField, application.validationOverrides().xmlForm());
    deploymentsToSlime(application.deployments().values(), root.setArray(deploymentsField));
    toSlime(application.deploymentJobs(), root.setObject(deploymentJobsField));
    toSlime(application.change(), root, deployingField);
    toSlime(application.outstandingChange(), root, outstandingChangeField);
    application.ownershipIssueId().ifPresent(issueId -> root.setString(ownershipIssueIdField, issueId.value()));
    root.setDouble(queryQualityField, application.metrics().queryServiceQuality());
    root.setDouble(writeQualityField, application.metrics().writeServiceQuality());
    application.rotation().ifPresent(rotation -> root.setString(rotationField, rotation.id().asString()));
    return slime;
}
Also used : Slime(com.yahoo.slime.Slime) Cursor(com.yahoo.slime.Cursor)

Example 44 with Cursor

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

the class ApplicationSerializer method jobRunToSlime.

private void jobRunToSlime(Optional<JobStatus.JobRun> jobRun, Cursor parent, String jobRunObjectName) {
    if (!jobRun.isPresent())
        return;
    Cursor object = parent.setObject(jobRunObjectName);
    object.setLong(jobRunIdField, jobRun.get().id());
    object.setString(versionField, jobRun.get().version().toString());
    toSlime(jobRun.get().applicationVersion(), object.setObject(revisionField));
    object.setString(reasonField, jobRun.get().reason());
    object.setLong(atField, jobRun.get().at().toEpochMilli());
}
Also used : Cursor(com.yahoo.slime.Cursor)

Example 45 with Cursor

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

the class UpgraderResponse method render.

@Override
public void render(OutputStream outputStream) throws IOException {
    Slime slime = new Slime();
    Cursor root = slime.setObject();
    root.setDouble("upgradesPerMinute", upgrader.upgradesPerMinute());
    Cursor array = root.setArray("confidenceOverrides");
    upgrader.confidenceOverrides().forEach((version, confidence) -> {
        Cursor object = array.addObject();
        object.setString(version.toString(), confidence.name());
    });
    new JsonFormat(true).encode(outputStream, slime);
}
Also used : JsonFormat(com.yahoo.slime.JsonFormat) Slime(com.yahoo.slime.Slime) Cursor(com.yahoo.slime.Cursor)

Aggregations

Cursor (com.yahoo.slime.Cursor)112 Slime (com.yahoo.slime.Slime)79 Test (org.junit.Test)33 SlimeJsonResponse (com.yahoo.vespa.hosted.controller.restapi.SlimeJsonResponse)19 ByteArrayOutputStream (java.io.ByteArrayOutputStream)17 DefParser (com.yahoo.config.codegen.DefParser)15 InnerCNode (com.yahoo.config.codegen.InnerCNode)15 StringReader (java.io.StringReader)15 IOException (java.io.IOException)9 ApplicationId (com.yahoo.config.provision.ApplicationId)8 JsonFormat (com.yahoo.slime.JsonFormat)8 Application (com.yahoo.vespa.hosted.controller.Application)6 List (java.util.List)6 Map (java.util.Map)6 Inspector (com.yahoo.slime.Inspector)5 SlimeUtils (com.yahoo.vespa.config.SlimeUtils)5 Ignore (org.junit.Ignore)5 Version (com.yahoo.component.Version)4 RegionName (com.yahoo.config.provision.RegionName)4 TenantName (com.yahoo.config.provision.TenantName)4