public boolean isXML( ConstantPool constants, HashMap<Integer, String> localRegNames, List<String> fullyQualifiedNames) throws InterruptedException { String cname; if (name != null) { cname = name.toString(LocalData.create(constants, localRegNames, fullyQualifiedNames)); } else { cname = (constants.getMultiname(multinameIndex).getName(constants, fullyQualifiedNames)); } String cns = ""; if (namespace != null) { cns = namespace.toString(LocalData.create(constants, localRegNames, fullyQualifiedNames)); } else { Namespace ns = constants.getMultiname(multinameIndex).getNamespace(constants); if ((ns != null) && (ns.name_index != 0)) { cns = ns.getName(constants); } } return cname.equals("XML") && cns.isEmpty(); }
@Override public GraphTextWriter appendTo(GraphTextWriter writer, LocalData localData) throws InterruptedException { if (namespace != null) { namespace.toString(writer, localData); writer.append("::"); } else { /*Namespace ns = constants.getMultiname(multinameIndex).getNamespace(constants); if ((ns != null)&&(ns.name_index!=0)) { ret = hilight(ns.getName(constants) + "::")+ret; }*/ } if (name != null) { writer.append("["); name.toString(writer, localData); writer.append("]"); } else { ConstantPool constants = localData.constantsAvm2; List<String> fullyQualifiedNames = localData.fullyQualifiedNames; writer.append(constants.getMultiname(multinameIndex).getName(constants, fullyQualifiedNames)); } return writer; }