/*
* Copyright 2011, 2012 Odysseus Software GmbH
*
* Licensed 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
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* 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 de.odysseus.staxon.json;
import java.util.Map;
import javax.xml.namespace.QName;
/**
* <p>Simple JSON XML configuration.</p>
*
* <p>Initially, values are set according to {@link JsonXMLConfig#DEFAULT}.</p>
* @see JsonXMLConfig
*/
public class JsonXMLConfigImpl implements JsonXMLConfig, Cloneable {
private QName virtualRoot = JsonXMLConfig.DEFAULT.getVirtualRoot();
private boolean multiplePI = JsonXMLConfig.DEFAULT.isMultiplePI();
private boolean prettyPrint = JsonXMLConfig.DEFAULT.isPrettyPrint();
private boolean autoArray = JsonXMLConfig.DEFAULT.isAutoArray();
private boolean autoPrimitive = JsonXMLConfig.DEFAULT.isAutoPrimitive();
private boolean namespaceDeclarations = JsonXMLConfig.DEFAULT.isNamespaceDeclarations();
private char namespaceSeparator = JsonXMLConfig.DEFAULT.getNamespaceSeparator();
private Map<String, String> namespaceMappings = JsonXMLConfig.DEFAULT.getNamespaceMappings();
private boolean repairingNamespaces = JsonXMLConfig.DEFAULT.isRepairingNamespaces();
private String textProperty = JsonXMLConfig.DEFAULT.getTextProperty();
private String attributePrefix = JsonXMLConfig.DEFAULT.getAttributePrefix();
@Override
protected JsonXMLConfigImpl clone() {
try {
return (JsonXMLConfigImpl) super.clone();
} catch (CloneNotSupportedException e) {
throw new RuntimeException(e); // should not happen
}
}
@Override
public boolean isAutoArray() {
return autoArray;
}
public void setAutoArray(boolean autoArray) {
this.autoArray = autoArray;
}
@Override
public boolean isAutoPrimitive() {
return autoPrimitive;
}
public void setAutoPrimitive(boolean autoPrimitive) {
this.autoPrimitive = autoPrimitive;
}
@Override
public boolean isMultiplePI() {
return multiplePI;
}
public void setMultiplePI(boolean multiplePI) {
this.multiplePI = multiplePI;
}
@Override
public boolean isNamespaceDeclarations() {
return namespaceDeclarations;
}
public void setNamespaceDeclarations(boolean namespaceDeclarations) {
this.namespaceDeclarations = namespaceDeclarations;
}
@Override
public char getNamespaceSeparator() {
return namespaceSeparator;
}
public void setNamespaceSeparator(char namespaceSeparator) {
this.namespaceSeparator = namespaceSeparator;
}
@Override
public boolean isPrettyPrint() {
return prettyPrint;
}
public void setPrettyPrint(boolean prettyPrint) {
this.prettyPrint = prettyPrint;
}
@Override
public QName getVirtualRoot() {
return virtualRoot;
}
public void setVirtualRoot(QName virtualRoot) {
this.virtualRoot = virtualRoot;
}
@Override
public boolean isRepairingNamespaces() {
return repairingNamespaces;
}
public void setRepairingNamespaces(boolean repairingNamespaces) {
this.repairingNamespaces = repairingNamespaces;
}
@Override
public Map<String, String> getNamespaceMappings() {
return namespaceMappings;
}
public void setNamespaceMappings(Map<String, String> namespaceMappings) {
this.namespaceMappings = namespaceMappings;
}
@Override
public String getTextProperty() {
return textProperty;
}
public void setTextProperty(String textProperty) {
this.textProperty = textProperty;
}
@Override
public String getAttributePrefix() {
return attributePrefix;
}
public void setAttributePrefix(String attributePrefix) {
this.attributePrefix = attributePrefix;
}
}