package com.banking.xc.utils.xml.vacation;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import android.text.TextUtils;
import com.banking.xc.entity.VacationCity;
import com.banking.xc.utils.xml.frame.XmlParseHandler;
public class VacationCityXmlParseHandler extends XmlParseHandler {
private List<VacationCity> vacationCityList;
private VacationCity vacationCity;
private String preTag;
public VacationCityXmlParseHandler(com.banking.xc.utils.xml.frame.XmlParseListener XmlParseListener, InputStream inputStream) {
super(XmlParseListener, inputStream);
}
@Override
public void cancelParse() {
}
@Override
public void destroy() {
vacationCityList = null;
}
@Override
public Object getObjectWhenEnd() {
return vacationCityList;
}
@Override
public void characters(char[] ch, int start, int length) throws SAXException {
// TODO Auto-generated method stub
super.characters(ch, start, length);
String data = new String(ch,start,length);
if(TextUtils.equals(preTag, "City")){
vacationCity.setCityNumber(data);
}
if(TextUtils.equals(preTag, "StartCityName")){
vacationCity.setStartCityName(data);
}
if(TextUtils.equals(preTag, "IsHotStartCity")){
vacationCity.setIsHotCity(data);
}
}
@Override
public void endElement(String uri, String localName, String qName) throws SAXException {
// TODO Auto-generated method stub
super.endElement(uri, localName, qName);
if(TextUtils.equals(localName, "VacationCity")){
vacationCityList.add(vacationCity);
vacationCity = null;
}
if(TextUtils.equals(localName, "VacationCityList")){
}
}
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
super.startElement(uri, localName, qName, attributes);
if(TextUtils.equals(localName, "VacationCityList")){
vacationCityList = new ArrayList<VacationCity>();
}
if(TextUtils.equals(localName, "VacationCity")){
vacationCity = new VacationCity();
}
preTag = localName;
}
/**
*<VacationCityResponse>
<VacationCityList>
<VacationCity>
<City>1</City>
<StartCityName>北京</StartCityName>
<IsHotStartCity>true</IsHotStartCity>
</VacationCity>
<VacationCity>
<City>2</City>
<StartCityName>上海</StartCityName>
<IsHotStartCity>true</IsHotStartCity>
</VacationCity>
......
</VacationCityList>
</VacationCityResponse>
*/
}