blob: eacf9210ecfa4604a0950f7b7ed523ca9b2762f9 [file] [log] [blame]
package de.ids_mannheim.korap;
import java.util.*;
import java.io.IOException;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import de.ids_mannheim.korap.response.Notifications;
import java.nio.ByteBuffer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Create a Statistics object.
*
* This is early work and highliy experimental!
*
* <blockquote><pre>
* KrillStats ks = new KrillStats(json);
* </pre></blockquote>
*
* Should serialize to something like
*
* "stats" : {
* "@type" : "koral:stats",
* "collection" : [
* {
* "@type" : "stats:collection",
* "foundry" : "base",
* "layer" : "s",
* "key" : "s",
* "value" : 450
* },
* {
* "@type" : "stats:collection",
* "key" : "texts",
* "value" : 2
* }
* ]
* }
*
*
* @author diewald
*/
/*
* TODO: THIS IS CURRENTLY HIGHLY EXPERIMENTAL
* TODO: Stats may use Column Stride fields (or DocValues)
* (or similiar concepts) https://issues.apache.org/jira/browse/LUCENE-1231
* https://issues.apache.org/jira/browse/LUCENE-3108
*/
public final class KrillStats extends Notifications {
// Logger
private final static Logger log = LoggerFactory.getLogger(KrillStats.class);
// This advices the java compiler to ignore all loggings
public static final boolean DEBUG = false;
/**
* Construct a new KrillStats.
*
*/
public KrillStats () {};
@Override
public JsonNode toJsonNode () {
ObjectMapper mapper = new ObjectMapper();
ObjectNode json = mapper.createObjectNode();
json.put("@type", "koral:stats");
return (JsonNode) json;
}
};