package Ġcom . example . employees xml pull parser test Ċ Ċ import Ġorg . xml pull . v 1 . Xml Pull Parser Ċ import Ġorg . xml pull . v 1 . Xml Pull Parser Exception Ċ import Ġorg . xml pull . v 1 . Xml Pull Parser Factory Ċ import Ġjava . io . InputStream Ċ import Ġjava . lang . Exception Ċ Ċ class ĠXml Pull Parser Handler Ġ{ ĊĠĠĠ Ġval Ġemployees Ġ= ĠArrayList < Employee >() ĊĠĠĠ Ġvar Ġemployee : Employee ? Ġ= Ġnull ĊĠĠĠ Ġvar ĠtextView : String Ġ= "" ĊĊĠĠĠ Ġfun Ġparse ( inputStream : ĠInputStream ): List < Employee > ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfactory Ġ= ĠXml Pull Parser Factory . newInstance () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfactory . is Namespace Aware Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparser Ġ= Ġfactory . new Pull Parser () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparser . setInput ( inputStream , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar ĠeventType Ġ= Ġparser . eventType ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( eventType Ġ!= ĠXml Pull Parser . END _ DOCUMENT ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtag name Ġ= Ġparser . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( eventType ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠXml Pull Parser . START _ TAG Ġ-> Ġif Ġ( tag name . equals (" employee ", Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġcreate Ġa Ġnew Ġinstance Ġof Ġemployee ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemployee Ġ= ĠEmployee () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠXml Pull Parser . TEXT Ġ-> ĠtextView Ġ= Ġparser . text ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠXml Pull Parser . END _ TAG Ġ-> Ġif Ġ( tag name . equals (" employee ", Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġadd Ġemployee Ġobject Ġto Ġlist ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemployee ?. let Ġ{ Ġemployees . add ( it ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( tag name . equals (" id ", Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemployee !!. id Ġ= ĠInteger . parseInt ( textView ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( tag name . equals (" name ", Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemployee !!. name Ġ= ĠtextView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( tag name . equals (" salary ", Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemployee !!. salary Ġ= Ġjava . lang . Float . parseFloat ( textView ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠeventType Ġ= Ġparser . next () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} catch Ġ( e : Xml Pull Parser Exception ){ ĊĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġemployees ĊĠĠĠ Ġ} Ċ }