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

View differences:

PointMemberTypeBinding.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;
......
95 96
	 * @throws IOException
96 97
	 */
97 98
	public Object parse(IXmlStreamReader parser,GPEDefaultGmlParser handler) throws XmlStreamException, IOException {
98
		boolean endFeature = false;
99
		int currentTag;
99

  
100
        parser.require(EventType.START_ELEMENT, GMLTags.GML_POINTMEMBER);
101

  
102
        boolean endFeature = false;
103
		EventType currentTag;
100 104
		Object point = null;		
101 105
		
102
		QName tag = parser.getName();
106
		QName tag = parser.getElementName();
103 107
		currentTag = parser.getEventType();
104 108

  
105 109
		while (!endFeature){
106
			switch(currentTag){
107
			case IXmlStreamReader.START_ELEMENT:
110
			switch(currentTag.getCode()){
111
			case EventType.START_ELEMENT_CODE:
108 112

  
109 113
				if (CompareUtils.compareWithNamespace(tag,GMLTags.GML_POINT)){
110 114
					point = handler.getProfile().getPointTypeBinding().
111 115
					parse(parser, handler);
112 116
				}
113 117
				break;
114
			case IXmlStreamReader.END_ELEMENT:
118
			case EventType.END_ELEMENT_CODE:
115 119
				if (CompareUtils.compareWithNamespace(tag,GMLTags.GML_POINTMEMBER)){						
116 120
					endFeature = true;						
117 121
				}
118 122
				break;
119
			case IXmlStreamReader.CHARACTERS:			
120

  
121
				break;
122 123
			}
123 124
			if (!endFeature){					
124
				currentTag = parser.next();
125
				tag = parser.getName();
125
				currentTag = parser.nextTag();
126
				tag = parser.getElementName();
126 127
			}
127 128
		}			
128 129
		return point;	

Also available in: Unified diff