package ru.csu.stan.java.classgen.handlers;
import java.util.Iterator;
import javax.xml.namespace.QName;
import javax.xml.stream.events.Attribute;
import javax.xml.stream.events.StartElement;
/**
*
* @author mz
*
*/
public class NodeAttributes {
public static final String NAME_ATTRIBUTE = "name";
public static final String FILENAME_ATTRIBUTE = "filename";
public static final String LINE_ATTRIBUTE = "line";
public static final String COL_ATTRIBUTE = "col";
private StartElement event;
public NodeAttributes(StartElement event){
this.event = event;
}
public boolean isAttributeExist(String name){
for (@SuppressWarnings("unchecked") Iterator<Attribute> it = event.getAttributes(); it.hasNext(); )
if (it.next().getName().equals(name))
return true;
return false;
}
public String getStringAttribute(String name){
Attribute attr = event.getAttributeByName(QName.valueOf(name));
if (attr != null)
return attr.getValue();
else
return "";
}
public int getIntAttribute(String name){
String str = getStringAttribute(name);
try{
return Integer.parseInt(str);
}
catch (NumberFormatException e){
e.printStackTrace();
return 0;
}
}
public String getNameAttribute(){
return getStringAttribute(NAME_ATTRIBUTE);
}
}