JavaFX Introspection

Just sharing some code snippets for deserialization of JavaFX objects.

function getValueType(obj:Object,name:String):String
{
    var context:FXLocal.Context=FXLocal.getContext();
    var objectValue:FXLocal.ObjectValue = new FXLocal.ObjectValue(obj,context);
    var cls:FXClassType = objectValue.getClassType();
    var varType:FXType = cls.getVariable(name).getType();
    println("{name} {varType}");
    if (varType instanceof FXSequenceType)
    {
        return "array";
    } else if (varType instanceof FXClassType) {
        return "element";
    } else {
        return "value";
    }
}

Thanks to James Weaver for tips on JavaFX Reflection API


About this entry