com.ibm.di.parser
Class JsonTdiFactory

java.lang.Object
  extended by com.ibm.di.parser.JsonTdiFactory
All Implemented Interfaces:
com.ibm.commons.util.io.json.JsonFactory

public class JsonTdiFactory
extends Object
implements com.ibm.commons.util.io.json.JsonFactory

This class implements the JsonFactory interface used by the IBM JavaScript Engine's JSON features. It is used both to create objects when reading JSON code, and also used when generating JSON code. This class maps between Tivoli Directory Integrator's Entry/Attribute model and the JSON model.

Parsing - When parsing JSON code the parser calls the createXXX methods and setProperty to generate an Entry from JSON data. Conversely, when generating JSON data from an Entry, the methods in use are the isXXX methods (e.g. isArray, isObject) and also the getProperty method, iterateArrayValues, and iterateObjectProperties.


Field Summary
static JsonTdiFactory instance
           
 
Constructor Summary
JsonTdiFactory()
           
 
Method Summary
 Object createArray(Object parent, String propertyName, List<Object> values)
           
 Object createBoolean(boolean value)
           
 Object createNull()
           
 Object createNumber(double value)
           
 Object createObject(Object parent, String propertyName)
           
 Object createString(String value)
           
 boolean getBoolean(Object value)
           
 double getNumber(Object value)
           
 Object getProperty(Object parent, String propertyName)
           
 String getString(Object value)
           
 boolean isArray(Object value)
           
 boolean isBoolean(Object value)
           
 boolean isNull(Object value)
           
 boolean isNumber(Object value)
           
 boolean isObject(Object value)
           
 boolean isString(Object value)
           
 Iterator<Object> iterateArrayValues(Object array)
           
 Iterator<String> iterateObjectProperties(Object object)
           
 void setProperty(Object parent, String propertyName, Object value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

instance

public static final JsonTdiFactory instance
Constructor Detail

JsonTdiFactory

public JsonTdiFactory()
Method Detail

createNull

public Object createNull()
Specified by:
createNull in interface com.ibm.commons.util.io.json.JsonFactory

createString

public Object createString(String value)
Specified by:
createString in interface com.ibm.commons.util.io.json.JsonFactory

createNumber

public Object createNumber(double value)
Specified by:
createNumber in interface com.ibm.commons.util.io.json.JsonFactory

createBoolean

public Object createBoolean(boolean value)
Specified by:
createBoolean in interface com.ibm.commons.util.io.json.JsonFactory

createObject

public Object createObject(Object parent,
                           String propertyName)
Specified by:
createObject in interface com.ibm.commons.util.io.json.JsonFactory

createArray

public Object createArray(Object parent,
                          String propertyName,
                          List<Object> values)
Specified by:
createArray in interface com.ibm.commons.util.io.json.JsonFactory

setProperty

public void setProperty(Object parent,
                        String propertyName,
                        Object value)
Specified by:
setProperty in interface com.ibm.commons.util.io.json.JsonFactory

getProperty

public Object getProperty(Object parent,
                          String propertyName)
                   throws com.ibm.commons.util.io.json.JsonException
Specified by:
getProperty in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

isNull

public boolean isNull(Object value)
               throws com.ibm.commons.util.io.json.JsonException
Specified by:
isNull in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

isString

public boolean isString(Object value)
                 throws com.ibm.commons.util.io.json.JsonException
Specified by:
isString in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

getString

public String getString(Object value)
                 throws com.ibm.commons.util.io.json.JsonException
Specified by:
getString in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

isNumber

public boolean isNumber(Object value)
                 throws com.ibm.commons.util.io.json.JsonException
Specified by:
isNumber in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

getNumber

public double getNumber(Object value)
                 throws com.ibm.commons.util.io.json.JsonException
Specified by:
getNumber in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

isBoolean

public boolean isBoolean(Object value)
                  throws com.ibm.commons.util.io.json.JsonException
Specified by:
isBoolean in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

getBoolean

public boolean getBoolean(Object value)
                   throws com.ibm.commons.util.io.json.JsonException
Specified by:
getBoolean in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

isObject

public boolean isObject(Object value)
                 throws com.ibm.commons.util.io.json.JsonException
Specified by:
isObject in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

iterateObjectProperties

public Iterator<String> iterateObjectProperties(Object object)
                                         throws com.ibm.commons.util.io.json.JsonException
Specified by:
iterateObjectProperties in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

isArray

public boolean isArray(Object value)
                throws com.ibm.commons.util.io.json.JsonException
Specified by:
isArray in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException

iterateArrayValues

public Iterator<Object> iterateArrayValues(Object array)
                                    throws com.ibm.commons.util.io.json.JsonException
Specified by:
iterateArrayValues in interface com.ibm.commons.util.io.json.JsonFactory
Throws:
com.ibm.commons.util.io.json.JsonException