package org.meaningfulweb.opengraph;
import java.util.HashMap;
import java.util.Map;
import net.htmlparser.jericho.HTMLElementName;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class OpenGraphContentHandler extends DefaultHandler {
private final Map<String,String> metaMap = new HashMap<String,String>();
@Override
public void startElement(String uri, String localName, String qName,
Attributes atts) throws SAXException {
if (HTMLElementName.META.equals(localName) && HTMLElementName.META.equals(qName)){
String attrVal = atts.getValue("property");
if (attrVal!=null && attrVal.startsWith("og:")){
String content = atts.getValue("content");
String name = attrVal.substring(OpenGraphParser.OG_PREFIX_CHAR_COUNT);
metaMap.put(name, content);
}
}
}
public OGObject extractOpenGraphMeta(){
return OpenGraphParser.parse(metaMap);
}
}