Class Kson

java.lang.Object
org.nustaq.kson.Kson

public class Kson
extends java.lang.Object
a simple text <=> object serialization. More readable than JSon, less complication/error prone than Yaml.

Main use is configuration files. - Supports Pojo's only. - No multidimensional or nested arrays. - No untyped Arrays (e.g. Object x[] = new byte[] { 1, 2}) - Collections: Map and List. Use Generics to type collections (can omit type tags then) Example from fast-cast:

     public static ClusterConf readFrom( String filePath ) throws Exception {
       return (ClusterConf) new Kson()
              .map(PublisherConf.class, SubscriberConf.class, TopicConf.class, ClusterConf.class)
              .readObject(new File(filePath));
   }
 
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static FSTConfiguration conf  
  • Constructor Summary

    Constructors 
    Constructor Description
    Kson()  
    Kson​(KsonTypeMapper mapper)  
  • Method Summary

    Modifier and Type Method Description
    static java.lang.Class fumbleOutGenericKeyType​(java.lang.reflect.Field field)  
    static java.lang.Class fumbleOutGenericValueType​(java.lang.reflect.Field field)  
    KsonTypeMapper getMapper()  
    boolean isSupportJSon()  
    static void main​(java.lang.String[] args)  
    Kson map​(java.lang.Class... c)
    map to simple name
    Kson map​(java.lang.String name, java.lang.Class c)  
    java.lang.Object readObject​(java.io.File file)  
    java.lang.Object readObject​(java.io.File file, java.lang.Class type)  
    java.lang.Object readObject​(java.io.File file, java.lang.String type)  
    java.lang.Object readObject​(java.io.InputStream stream, java.lang.String encoding, java.lang.String expectedType)  
    java.lang.Object readObject​(java.lang.String dson)  
    java.lang.Object readObject​(java.lang.String dsonOrJSon, java.lang.String expectedType)  
    java.lang.Object readObject​(java.lang.String dsonOrJSon, java.lang.String expectedType, KsonArgTypesResolver resolve)  
    Kson supportJSon​(boolean supportJSon)  
    java.lang.String writeJSonObject​(java.lang.Object o, boolean tagTopLevel)  
    java.lang.String writeObject​(java.lang.Object o)  
    java.lang.String writeObject​(java.lang.Object o, boolean tagTopLevel)  
    java.lang.String writePlainJSonObject​(java.lang.Object o)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

  • Method Details

    • fumbleOutGenericKeyType

      public static java.lang.Class fumbleOutGenericKeyType​(java.lang.reflect.Field field)
    • fumbleOutGenericValueType

      public static java.lang.Class fumbleOutGenericValueType​(java.lang.reflect.Field field)
    • map

      public Kson map​(java.lang.String name, java.lang.Class c)
    • map

      public Kson map​(java.lang.Class... c)
      map to simple name
      Parameters:
      c -
      Returns:
    • readObject

      public java.lang.Object readObject​(java.lang.String dson) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • readObject

      public java.lang.Object readObject​(java.lang.String dsonOrJSon, java.lang.String expectedType, KsonArgTypesResolver resolve) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • readObject

      public java.lang.Object readObject​(java.lang.String dsonOrJSon, java.lang.String expectedType) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • isSupportJSon

      public boolean isSupportJSon()
    • supportJSon

      public Kson supportJSon​(boolean supportJSon)
    • readObject

      public java.lang.Object readObject​(java.io.File file) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • readObject

      public java.lang.Object readObject​(java.io.File file, java.lang.Class type) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • readObject

      public java.lang.Object readObject​(java.io.File file, java.lang.String type) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • readObject

      public java.lang.Object readObject​(java.io.InputStream stream, java.lang.String encoding, java.lang.String expectedType) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • writeObject

      public java.lang.String writeObject​(java.lang.Object o) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • writeObject

      public java.lang.String writeObject​(java.lang.Object o, boolean tagTopLevel) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • writeJSonObject

      public java.lang.String writeJSonObject​(java.lang.Object o, boolean tagTopLevel) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • writePlainJSonObject

      public java.lang.String writePlainJSonObject​(java.lang.Object o) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • getMapper

      public KsonTypeMapper getMapper()
    • main

      public static void main​(java.lang.String[] args) throws java.lang.Exception
      Throws:
      java.lang.Exception