Package org.nustaq.kson
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 FSTConfigurationconf -
Constructor Summary
Constructors Constructor Description Kson()Kson(KsonTypeMapper mapper) -
Method Summary
Modifier and Type Method Description static java.lang.ClassfumbleOutGenericKeyType(java.lang.reflect.Field field)static java.lang.ClassfumbleOutGenericValueType(java.lang.reflect.Field field)KsonTypeMappergetMapper()booleanisSupportJSon()static voidmain(java.lang.String[] args)Ksonmap(java.lang.Class... c)map to simple nameKsonmap(java.lang.String name, java.lang.Class c)java.lang.ObjectreadObject(java.io.File file)java.lang.ObjectreadObject(java.io.File file, java.lang.Class type)java.lang.ObjectreadObject(java.io.File file, java.lang.String type)java.lang.ObjectreadObject(java.io.InputStream stream, java.lang.String encoding, java.lang.String expectedType)java.lang.ObjectreadObject(java.lang.String dson)java.lang.ObjectreadObject(java.lang.String dsonOrJSon, java.lang.String expectedType)java.lang.ObjectreadObject(java.lang.String dsonOrJSon, java.lang.String expectedType, KsonArgTypesResolver resolve)KsonsupportJSon(boolean supportJSon)java.lang.StringwriteJSonObject(java.lang.Object o, boolean tagTopLevel)java.lang.StringwriteObject(java.lang.Object o)java.lang.StringwriteObject(java.lang.Object o, boolean tagTopLevel)java.lang.StringwritePlainJSonObject(java.lang.Object o)
-
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
-
map
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
-
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
-
main
public static void main(java.lang.String[] args) throws java.lang.Exception- Throws:
java.lang.Exception
-