Revision 53 branches/v1_9_0/libGPE-GML/src/org/gvsig/gpe/gml/parser/v2/features/FeatureMemberTypeBinding.java

View differences:

FeatureMemberTypeBinding.java
6 6

  
7 7
import org.gvsig.gpe.gml.parser.GPEDefaultGmlParser;
8 8
import org.gvsig.gpe.gml.utils.GMLTags;
9
import org.gvsig.gpe.xml.stream.EventType;
9 10
import org.gvsig.gpe.xml.stream.IXmlStreamReader;
10 11
import org.gvsig.gpe.xml.stream.XmlStreamException;
11 12
import org.gvsig.gpe.xml.utils.CompareUtils;
......
102 103
	 * @throws IOException
103 104
	 */
104 105
	public Object parse(IXmlStreamReader parser,GPEDefaultGmlParser handler) throws XmlStreamException, IOException {
106

  
107
        parser.require(EventType.START_ELEMENT, GMLTags.GML_FEATUREMEMBER);
108
        
105 109
		boolean endFeature = false;
106
		int currentTag;		
110
		EventType currentTag;		
107 111
		Object feature = null;	
108 112
				
109
		QName tag = parser.getName();
113
		QName tag = parser.getElementName();
110 114
		currentTag = parser.getEventType();
111 115

  
112 116
		while (!endFeature){
113
			switch(currentTag){
114
			case IXmlStreamReader.START_ELEMENT:
117
			switch(currentTag.getCode()){
118
			case EventType.START_ELEMENT_CODE:
115 119
				if (!CompareUtils.compareWithNamespace(tag, GMLTags.GML_FEATUREMEMBER)){
116 120
					feature = handler.getProfile().getFeatureTypeBinding().parse(parser, handler);
117 121
				}	
118 122
				break;
119
			case IXmlStreamReader.END_ELEMENT:
123
			case EventType.END_ELEMENT_CODE:
120 124
				if (CompareUtils.compareWithNamespace(tag,GMLTags.GML_FEATUREMEMBER)){						
121 125
					endFeature = true;					
122 126
				}
123 127
				break;
124
			case IXmlStreamReader.CHARACTERS:					
125

  
126
				break;
127 128
			}
128 129
			if (!endFeature){					
129 130
				currentTag = parser.next();
130
				tag = parser.getName();
131
				tag = parser.getElementName();
131 132
			}
132 133
		}			
133 134

  

Also available in: Unified diff