001    package nu.validator.htmlparser.impl;
002    
003    
004    public class XmlLangAttributesImpl extends AttributesImpl {
005    
006        /**
007         * @see nu.validator.htmlparser.impl.AttributesImpl#getIndex(java.lang.String, java.lang.String)
008         */
009        @Override
010        public int getIndex(String uri, String localName) {
011            if (("".equals(uri) && !"lang".equals(localName)) || ("http://www.w3.org/XML/1998/namespace".equals(uri) && "lang".equals(localName))) {
012                return getIndex(localName);
013            } else {
014                return -1;
015            }
016        }
017    
018        /**
019         * @see nu.validator.htmlparser.impl.AttributesImpl#getURI(int)
020         */
021        @Override
022        public String getURI(int index) {
023            String localName = getQName(index);
024            if (localName == null) {
025                return null;
026            } else if ("lang".equals(localName)) {
027                return "http://www.w3.org/XML/1998/namespace";
028            } else {
029                return "";
030            }
031        }
032    
033        /**
034         * @see nu.validator.htmlparser.impl.AttributesImpl#getValue(java.lang.String, java.lang.String)
035         */
036        @Override
037        public String getValue(String uri, String localName) {
038            if (("".equals(uri) && !"lang".equals(localName)) || ("http://www.w3.org/XML/1998/namespace".equals(uri) && "lang".equals(localName))) {
039                return getValue(localName);
040            } else {
041                return null;
042            }
043        }
044    
045        /**
046         * @see nu.validator.htmlparser.impl.AttributesImpl#getType(java.lang.String, java.lang.String)
047         */
048        @Override
049        public String getType(String uri, String localName) {
050            if (("".equals(uri) && !"lang".equals(localName)) || ("http://www.w3.org/XML/1998/namespace".equals(uri) && "lang".equals(localName))) {
051                return getType(localName);
052            } else {
053                return null;
054            }
055        }
056    
057    }