/**
* Copyright (c) 2005-2010, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
* <p/>
* WSO2 Inc. licenses this file to you under the Apache License,
* Version 2.0 (the "License"); you may not use this file except
* in compliance with the License.
* You may obtain a copy of the License at
* <p/>
* http://www.apache.org/licenses/LICENSE-2.0
* <p/>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.synapse.commons.staxon.core.json.stream.impl;
public final class Constants {
private Constants() {
}
/** The JSON Key for wrapper type JSON Object */
public static final String OBJECT = "jsonObject";
/** The JSON Key for wrapper type anonymous JSON array */
public static final String ARRAY = "jsonArray";
/** The JSON Key for wrapper type anonymous JSON array elements */
public static final String ARRAY_ELEM = "jsonElement";
public static final String EMPTY = "jsonEmpty";
public static final String EMPTY_VALUE = "_JsonScanner_EMPTY_OBJECT";
public static final String ID = "_JsonReader";
/** Used when the local name starts with a digit character. */
public static final String PRECEDING_DIGIT_S = "_PD_";
/** Final prefix for local names that have preceding digits */
public static final String PRECEDING_DIGIT = ID + PRECEDING_DIGIT_S;
/** Used when the local name starts with the $ character. */
public static final String PRECEDING_DOLLOR_S = "_PS_";
public static final String PRECEDING_DOLLOR = ID + PRECEDING_DOLLOR_S;
public static final int C_DOLLOR = '$';
public static final int C_USOCRE = '_';
public static enum SCANNER {
/** Instructs the XML Reader to use the generated scanner to tokenize the JSON stream. */
DEFAULT("DEFAULT"),
/** Instructs the XML Reader to use the JSON scanner that can process anonymous nested arrays.<br/>
If this scanner is used, the input stream has to be read once within the message builder to identify the type <br/>
of JSON message (ie. if the payload is a JSON Object or a JSON array object.)*/
SCANNER_1("SCANNER_1"),
/** Instructs the XML Reader to use the JSON scanner that can both process anonymous (nested/top level) arrays <br/>
and adds additional tokens to the input stream to identify the type of JSON steam.
If this scanner is used, theres no need to pre-read the input stream within the message builder to identify the type <br/>
of JSON message (ie. if the payload is a JSON Object or a JSON array object.)*/
SCANNER_2("SCANNER_2");
private final String name;
SCANNER(String name) {
this.name = name;
}
public String toString() {
return name;
}
}
}