package org.compass.core.converter.json; import org.compass.core.converter.ConversionException; import org.compass.core.json.AliasedJsonObject; import org.compass.core.json.JsonObject; /** * Converts an {@link org.compass.core.json.JsonObject} to and from an JSON string. * * @author kimchy */ public interface JsonContentConverter { /** * Converts an {@link org.compass.core.xml.XmlObject} into an xml string. * * @param jsonObject The JSON object to convert to a JSON string * @return A JSON string representation of the Json object * @throws org.compass.core.converter.ConversionException * Failed to convert the JSON object to a JSON string */ String toJSON(JsonObject jsonObject) throws ConversionException; /** * Converts a JSON string into an {@link org.compass.core.json.AliasedJsonObject}. * * @param alias The alias the aliased JSON object is associated with * @param json The JSON string that will be converted into an aliases JSON object * @return The aliased JSON object that is the restult of the JSON parsed * @throws org.compass.core.converter.ConversionException * */ AliasedJsonObject fromJSON(String alias, String json) throws ConversionException; }