moved RDFaParser.xsl configuration file to defaults

pull/1/head
Michael Peter Christen 13 years ago
parent 90b82ce994
commit dbdd697f4d

@ -301,12 +301,6 @@
includes="**/*"/> includes="**/*"/>
</copy> </copy>
<!-- copy RDFaParser -->
<copy todir="${release_main}/RDFaParser">
<fileset dir="${RDFaParser}"
includes="**/*"/>
</copy>
<!-- copy Unix wrappers --> <!-- copy Unix wrappers -->
<copy todir="${release_main}"> <copy todir="${release_main}">
<fileset dir="."> <fileset dir=".">

@ -14,13 +14,12 @@ import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource; import javax.xml.transform.stream.StreamSource;
import net.yacy.yacy;
import net.yacy.document.parser.rdfa.IRDFaTriple; import net.yacy.document.parser.rdfa.IRDFaTriple;
import net.yacy.kelondro.logging.Log; import net.yacy.kelondro.logging.Log;
import net.yacy.yacy;
public class RDFaTripleImpl{ public class RDFaTripleImpl{
private static Templates templates = null; private static Templates templates = null;
private String propertyURI = null; private String propertyURI = null;
private String subjectURI = null; private String subjectURI = null;
@ -30,59 +29,52 @@ public class RDFaTripleImpl{
private String value = null; private String value = null;
private String dataType = null; private String dataType = null;
private String language = null; private String language = null;
private Reader in; private final Reader in;
private Transformer aTransformer; private final Transformer aTransformer;
private ArrayList<IRDFaTriple> allRDFaTriples = new ArrayList<IRDFaTriple>(); private final ArrayList<IRDFaTriple> allRDFaTriples = new ArrayList<IRDFaTriple>();
public RDFaTripleImpl(Reader in, String base) throws IOException, public RDFaTripleImpl(Reader in, String base) throws IOException,
TransformerException, TransformerConfigurationException { TransformerException, TransformerConfigurationException {
BufferedReader bufReader = new BufferedReader(in); BufferedReader bufReader = new BufferedReader(in);
String readLine = bufReader.readLine(); String readLine = bufReader.readLine();
if (!readLine.toLowerCase().contains("<!doctype")){ if (!readLine.toLowerCase().contains("<!doctype")){
bufReader.reset(); bufReader.reset();
} }
if (templates == null) { if (templates == null) {
File f = new File (yacy.homedir + File.separatorChar + "defaults" + File.separatorChar + "RDFaParser.xsl");
try{ try {
File f = new File (yacy.homedir+File.separatorChar+"RDFaParser"+File.separatorChar+"RDFaParser.xsl");
StreamSource aSource = new StreamSource(f); StreamSource aSource = new StreamSource(f);
TransformerFactory aFactory = TransformerFactory.newInstance();
templates = aFactory.newTemplates(aSource);
TransformerFactory aFactory = TransformerFactory.newInstance(); } catch(Exception e){
templates = aFactory.newTemplates(aSource); Log.logSevere("RDFA PARSER", "XSL template could not be loaded from " + f.toString());
}
catch(Exception e){
Log.logSevere("RDFA PARSER", "XSL template could not be loaded from "+yacy.homedir+File.separatorChar+"RDFaParser"+File.separatorChar+"RDFaParser.xsl");
} }
} }
this.aTransformer = templates.newTransformer(); this.aTransformer = templates.newTransformer();
aTransformer.setParameter("parser", this); this.aTransformer.setParameter("parser", this);
aTransformer.setParameter("url", base); this.aTransformer.setParameter("url", base);
this.in = bufReader; this.in = bufReader;
} }
public IRDFaTriple[] parse() { public IRDFaTriple[] parse() {
try { try {
aTransformer.transform(new StreamSource(in), new StreamResult(System.out)); this.aTransformer.transform(new StreamSource(this.in), new StreamResult(System.out));
} catch (TransformerException e) { } catch (TransformerException e) {
Log.logWarning("RDFA PARSER", "Error while reading RDFa"); Log.logWarning("RDFA PARSER", "Error while reading RDFa");
// e.printStackTrace(); // e.printStackTrace();
} }
return allRDFaTriples .toArray(new IRDFaTriple[]{}); return this.allRDFaTriples .toArray(new IRDFaTriple[]{});
} }
public static boolean flushDataProperty(Object oparser) { public static boolean flushDataProperty(Object oparser) {
RDFaTripleImpl parser = ((RDFaTripleImpl)oparser); RDFaTripleImpl parser = ((RDFaTripleImpl)oparser);
parser.reportDataProperty(parser.subjectURI, parser.subjectNodeURI, parser.propertyURI, parser.reportDataProperty(parser.subjectURI, parser.subjectNodeURI, parser.propertyURI,
parser.value, parser.dataType, parser.language, parser.objectNodeURI, parser.objectURI); parser.value, parser.dataType, parser.language, parser.objectNodeURI, parser.objectURI);
nullAllValues(parser); nullAllValues(parser);
@ -93,7 +85,7 @@ public class RDFaTripleImpl{
String propertyURI, String value, String dataType, String propertyURI, String value, String dataType,
String language, String objectNodeURI, String objectURI) { String language, String objectNodeURI, String objectURI) {
IRDFaTriple triple = new RDFaTripleContent(subjectURI,subjectNodeURI,propertyURI,value,dataType,language, objectNodeURI,objectURI); IRDFaTriple triple = new RDFaTripleContent(subjectURI,subjectNodeURI,propertyURI,value,dataType,language, objectNodeURI,objectURI);
allRDFaTriples.add(triple); this.allRDFaTriples.add(triple);
} }
private static void nullAllValues(RDFaTripleImpl parser) { private static void nullAllValues(RDFaTripleImpl parser) {
@ -104,7 +96,7 @@ public class RDFaTripleImpl{
parser.objectNodeURI = null; parser.objectNodeURI = null;
parser.value = null; parser.value = null;
parser.dataType = null; parser.dataType = null;
parser.language = null; parser.language = null;
} }
public static boolean flushObjectProperty(Object oparser) { public static boolean flushObjectProperty(Object oparser) {
@ -151,7 +143,7 @@ public class RDFaTripleImpl{
((RDFaTripleImpl)parser).subjectURI = theSubjectURI; ((RDFaTripleImpl)parser).subjectURI = theSubjectURI;
return true; return true;
} }
public static boolean setTheValue(Object parser, String theValue) { public static boolean setTheValue(Object parser, String theValue) {
((RDFaTripleImpl)parser).value = theValue; ((RDFaTripleImpl)parser).value = theValue;
return true; return true;

Loading…
Cancel
Save