diff --git a/src/main/java/com/reandroid/xml/parser/AttrIDProvider.java b/src/main/java/com/reandroid/xml/parser/AttrIDProvider.java deleted file mode 100755 index 5fb86fa..0000000 --- a/src/main/java/com/reandroid/xml/parser/AttrIDProvider.java +++ /dev/null @@ -1,21 +0,0 @@ - /* - * Copyright (C) 2022 github.com/REAndroid - * - * 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 com.reandroid.xml.parser; - -public interface AttrIDProvider { - int getAttributeNameResourceId(int position); - int getAttributeValueResourceId(int position); -} diff --git a/src/main/java/com/reandroid/xml/parser/XMLDocumentParser.java b/src/main/java/com/reandroid/xml/parser/XMLDocumentParser.java index 62901a8..4563436 100755 --- a/src/main/java/com/reandroid/xml/parser/XMLDocumentParser.java +++ b/src/main/java/com/reandroid/xml/parser/XMLDocumentParser.java @@ -169,26 +169,10 @@ public class XMLDocumentParser { String attrValue=mParser.getAttributeValue(i); String prefix=mParser.getAttributePrefix(i); if(!XMLUtil.isEmpty(prefix)){ - prefix=validateNameSpace(prefix, i); attrName=appendPrefix(prefix, attrName); checkNamespace(prefix, i); } - XMLAttribute attr=mCurrentElement.setAttribute(attrName, attrValue); - addIds(attr, i); - } - private void addIds(XMLAttribute attr, int i){ - if(attr==null){ - return; - } - XmlPullParser parser=mParser; - if(!(parser instanceof AttrIDProvider)){ - return; - } - AttrIDProvider idProvider=(AttrIDProvider)parser; - int nameId=idProvider.getAttributeNameResourceId(i); - int valueId=idProvider.getAttributeValueResourceId(i); - attr.setNameId(nameId); - attr.setValueId(valueId); + mCurrentElement.setAttribute(attrName, attrValue); } private String appendPrefix(String prefix, String attrName){ if(!prefix.endsWith(":")){ @@ -211,42 +195,6 @@ public class XMLDocumentParser { } checkNamespace(prefix, nsUri); } - private String validateNameSpace(String prefix, int i){ - XmlPullParser parser=mParser; - if(!(parser instanceof AttrIDProvider)){ - return prefix; - } - AttrIDProvider idProvider=(AttrIDProvider)parser; - int resId=idProvider.getAttributeNameResourceId(i); - if(!isResourceId(resId)){ - return prefix; - } - boolean isAndroid; - if(!isAndroid(resId)){ - if(!"android".equals(prefix)){ - return prefix; - } - isAndroid=false; - }else { - if("android".equals(prefix)){ - return prefix; - } - isAndroid=true; - } - NameSpaceItem ns; - if(isAndroid){ - ns=NameSpaceItem.getAndroid(); - }else { - ns=NameSpaceItem.getApp(); - } - String prefixNew=ns.getPrefix(); - NameSpaceItem nsItem=mCurrentElement.getNameSpaceItemForPrefix(prefixNew); - if(nsItem==null){ - mCurrentElement.addNameSpace(ns); - mNameSpaceCreated=true; - } - return prefixNew; - } private void checkNamespace(String prefix, String nsUri){ NameSpaceItem nsItem=mCurrentElement.getNameSpaceItemForPrefix(prefix); if(nsItem!=null){