/*
* Copyright 2005-2015 by BerryWorks Software, LLC. All rights reserved.
*
* This file is part of EDIReader. You may obtain a license for its use directly from
* BerryWorks Software, and you may also choose to use this software under the terms of the
* GPL version 3. Other products in the EDIReader software suite are available only by licensing
* with BerryWorks. Only those files bearing the GPL statement below are available under the GPL.
*
* EDIReader is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of
* the License, or (at your option) any later version.
*
* EDIReader is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
* even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with EDIReader. If not,
* see <http://www.gnu.org/licenses/>.
*/
package com.berryworks.edireader;
import com.berryworks.edireader.error.EDISyntaxExceptionHandler;
import com.berryworks.edireader.tokenizer.Tokenizer;
import com.berryworks.edireader.util.BranchingWriter;
import org.xml.sax.*;
import java.io.IOException;
import java.io.Writer;
import java.util.Locale;
/**
* This EDIReader subclass wraps an EDIReader delegate, providing an opportunity to decorate
* the delegate with additional features.
*/
public class EDIReaderWrapper extends EDIReader {
private EDIReader wrappedEDIReader;
public EDIReaderWrapper(EDIReader wrappedEdiReader) {
super();
this.wrappedEDIReader = wrappedEdiReader;
}
public EDIReaderWrapper() {
throw new RuntimeException("EDIReaderWrapper default construction not allowed");
}
public EDIReader getWrappedEDIReader() {
return wrappedEDIReader;
}
@Override
public void preview() throws EDISyntaxException, IOException {
wrappedEDIReader.preview();
}
@Override
public void parse(InputSource source) throws SAXException, IOException {
wrappedEDIReader.parse(source);
}
@Override
public XMLTags getXMLTags() {
return wrappedEDIReader.getXMLTags();
}
@Override
public void setXMLTags(XMLTags tags) {
wrappedEDIReader.setXMLTags(tags);
}
@Override
public char getTerminator() {
return wrappedEDIReader.getTerminator();
}
@Override
public void setTerminator(char terminator) {
wrappedEDIReader.setTerminator(terminator);
}
@Override
public String getTerminatorSuffix() {
return wrappedEDIReader.getTerminatorSuffix();
}
@Override
public void setTerminatorSuffix(String terminatorSuffix) {
wrappedEDIReader.setTerminatorSuffix(terminatorSuffix);
}
@Override
public char getDelimiter() {
return wrappedEDIReader.getDelimiter();
}
@Override
public void setDelimiter(char delimiter) {
wrappedEDIReader.setDelimiter(delimiter);
}
@Override
public char getSubDelimiter() {
return wrappedEDIReader.getSubDelimiter();
}
@Override
public void setSubDelimiter(char subDelimiter) {
wrappedEDIReader.setSubDelimiter(subDelimiter);
}
@Override
public char getSubSubDelimiter() {
return wrappedEDIReader.getSubSubDelimiter();
}
@Override
public void setSubSubDelimiter(char subSubDelimiter) {
wrappedEDIReader.setSubSubDelimiter(subSubDelimiter);
}
@Override
public int getRelease() {
return wrappedEDIReader.getRelease();
}
@Override
public void setRelease(int release) {
wrappedEDIReader.setRelease(release);
}
@Override
public char getReleaseCharacter() {
return wrappedEDIReader.getReleaseCharacter();
}
@Override
public boolean isReleaseCharacterDefined() {
return wrappedEDIReader.isReleaseCharacterDefined();
}
@Override
public char getDecimalMark() {
return wrappedEDIReader.getDecimalMark();
}
@Override
public void setDecimalMark(char decimalMark) {
wrappedEDIReader.setDecimalMark(decimalMark);
}
@Override
public char getRepetitionSeparator() {
return wrappedEDIReader.getRepetitionSeparator();
}
@Override
public void setRepetitionSeparator(char repetitionSeparator) {
wrappedEDIReader.setRepetitionSeparator(repetitionSeparator);
}
@Override
public Tokenizer getTokenizer() {
return wrappedEDIReader.getTokenizer();
}
@Override
public void setTokenizer(Tokenizer t) {
wrappedEDIReader.setTokenizer(t);
}
@Override
public void setCopyWriter(Writer writer) {
wrappedEDIReader.setCopyWriter(writer);
}
@Override
public SyntaxDescriptor getAcknowledgmentSyntaxDescriptor() {
return wrappedEDIReader.getAcknowledgmentSyntaxDescriptor();
}
@Override
public void setAcknowledgmentSyntaxDescriptor(SyntaxDescriptor syntaxDescriptor) {
wrappedEDIReader.setAcknowledgmentSyntaxDescriptor(syntaxDescriptor);
}
@Override
public TransactionCallback getTransactionCallback() {
return wrappedEDIReader.getTransactionCallback();
}
@Override
public void setTransactionCallback(TransactionCallback transactionCallback) {
wrappedEDIReader.setTransactionCallback(transactionCallback);
}
@Override
public EDISyntaxExceptionHandler getSyntaxExceptionHandler() {
return wrappedEDIReader.getSyntaxExceptionHandler();
}
@Override
public void setSyntaxExceptionHandler(EDISyntaxExceptionHandler syntaxExceptionHandler) {
wrappedEDIReader.setSyntaxExceptionHandler(syntaxExceptionHandler);
}
@Override
public ContentHandler getContentHandler() {
return wrappedEDIReader.getContentHandler();
}
@Override
public void setContentHandler(ContentHandler handler) {
wrappedEDIReader.setContentHandler(handler);
}
@Override
public boolean getFeature(String name) throws SAXNotRecognizedException, SAXNotSupportedException {
return wrappedEDIReader.getFeature(name);
}
@Override
public void setFeature(String name, boolean value) throws SAXNotRecognizedException, SAXNotSupportedException {
wrappedEDIReader.setFeature(name, value);
}
@Override
public Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException {
return wrappedEDIReader.getProperty(name);
}
@Override
public void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException {
wrappedEDIReader.setProperty(name, value);
}
@Override
public String getFirstSegment() {
return wrappedEDIReader.getFirstSegment();
}
@Override
public void setFirstSegment(String firstSegment) {
wrappedEDIReader.setFirstSegment(firstSegment);
}
// ----------------------------------
@Override
protected void parseSetup(InputSource source) throws EDISyntaxException, IOException {
wrappedEDIReader.parseSetup(source);
}
@Override
public void setAcknowledgment(Writer writer) {
wrappedEDIReader.setAcknowledgment(writer);
}
@Override
public void setAcknowledgment(Writer writer, SyntaxDescriptor syntaxDescriptor) {
wrappedEDIReader.setAcknowledgment(writer, syntaxDescriptor);
}
@Override
public boolean isNamespaceEnabled() {
return wrappedEDIReader.isNamespaceEnabled();
}
@Override
public void setNamespaceEnabled(boolean namespaceEnabled) {
wrappedEDIReader.setNamespaceEnabled(namespaceEnabled);
}
@Override
public void setLocale(Locale locale) throws SAXException {
wrappedEDIReader.setLocale(locale);
}
@Override
public void setEntityResolver(EntityResolver resolver) {
wrappedEDIReader.setEntityResolver(resolver);
}
@Override
public void setDTDHandler(DTDHandler handler) {
wrappedEDIReader.setDTDHandler(handler);
}
@Override
public void setErrorHandler(ErrorHandler handler) {
wrappedEDIReader.setErrorHandler(handler);
}
@Override
public void parse(String systemId) throws SAXException, IOException {
wrappedEDIReader.parse(systemId);
}
@Override
public ErrorHandler getErrorHandler() {
return wrappedEDIReader.getErrorHandler();
}
@Override
public DTDHandler getDTDHandler() {
return wrappedEDIReader.getDTDHandler();
}
@Override
public EntityResolver getEntityResolver() {
return wrappedEDIReader.getEntityResolver();
}
@Override
public int getCharCount() {
return wrappedEDIReader.getCharCount();
}
@Override
public int getSegmentCharCount() {
return wrappedEDIReader.getSegmentCharCount();
}
@Override
public EDIAttributes getDocumentAttributes() {
return wrappedEDIReader.getDocumentAttributes();
}
@Override
public EDIAttributes getInterchangeAttributes() {
return wrappedEDIReader.getInterchangeAttributes();
}
@Override
public EDIAttributes getGroupAttributes() {
return wrappedEDIReader.getGroupAttributes();
}
@Override
public BranchingWriter getAckStream() {
return wrappedEDIReader.getAckStream();
}
@Override
public void setAckStream(BranchingWriter ackStream) {
wrappedEDIReader.setAckStream(ackStream);
}
@Override
public boolean isPreviewed() {
return wrappedEDIReader.isPreviewed();
}
@Override
public void setPreviewed(boolean previewed) {
wrappedEDIReader.setPreviewed(previewed);
}
@Override
public String toString() {
return wrappedEDIReader.toString();
}
}