package nu.validator.xml;

import java.io.InputStream;
import java.io.Reader;

import org.xml.sax.InputSource;

/**
 * @version $Id$
 * @author hsivonen
 */
public class TypedInputSource extends InputSource {

    private String type;
    
    /**
     * 
     */
    public TypedInputSource() {
        super();
    }

    /**
     * @param arg0
     */
    public TypedInputSource(String arg0) {
        super(arg0);
    }

    /**
     * @param arg0
     */
    public TypedInputSource(InputStream arg0) {
        super(arg0);
    }

    /**
     * @param arg0
     */
    public TypedInputSource(Reader arg0) {
        super(arg0);
    }

    
    /**
     * @return Returns the type.
     */
    public String getType() {
        return type;
    }
    /**
     * @param type The type to set.
     */
    public void setType(String type) {
        this.type = type;
    }
}

@@ -1,8 +1,1180 @@
+/*%0A * Copyright (c) 2005 Henri Sivonen%0A * Copyright (c) 2007 Mozilla Foundation%0A *%0A * Permission is hereby granted, free of charge, to any person obtaining a %0A * copy of this software and associated documentation files (the %22Software%22), %0A * to deal in the Software without restriction, including without limitation %0A * the rights to use, copy, modify, merge, publish, distribute, sublicense, %0A * and/or sell copies of the Software, and to permit persons to whom the %0A * Software is furnished to do so, subject to the following conditions:%0A *%0A * The above copyright notice and this permission notice shall be included in %0A * all copies or substantial portions of the Software.%0A *%0A * THE SOFTWARE IS PROVIDED %22AS IS%22, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR %0A * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, %0A * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL %0A * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER %0A * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING %0A * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER %0A * DEALINGS IN THE SOFTWARE.%0A */%0A%0A
 package 
@@ -1400,20 +1400,46 @@
 g type;%0A
+%0A
     
+private int length = -1;%0A
 %0A    /**
@@ -2032,24 +2032,24 @@
 ing type) %7B%0A
-
         this
@@ -2068,10 +2068,432 @@
 ;%0A    %7D%0A
+    %0A    /**%0A     * Returns the length.%0A     * %0A     * @return the length%0A     */%0A    public int getLength() %7B%0A        return length;%0A    %7D%0A%0A    /**%0A     * Sets the length.%0A     * %0A     * @param length the length to set%0A     */%0A    public void setLength(int length) %7B%0A        if (length %3C -1) %7B%0A            throw new IllegalArgumentException(%22Length must be -1 or greater.%22);%0A        %7D%0A        this.length = length;%0A    %7D%0A
 %7D%0A

add length