Project

General

Profile

1
package eu.dnetlib.data.mapreduce.hbase.lodExport.utils;
2

    
3
import javax.xml.transform.Transformer;
4
import javax.xml.transform.TransformerFactory;
5
import javax.xml.transform.stream.StreamResult;
6
import javax.xml.transform.stream.StreamSource;
7
import java.io.ByteArrayInputStream;
8
import java.io.ByteArrayOutputStream;
9
import java.io.InputStream;
10

    
11
public class ContextTransformer {
12

    
13
    public String transformXSL(String xml) throws Exception {
14
        Transformer transformer;
15
        TransformerFactory tFactory = TransformerFactory.newInstance();
16

    
17
        if (xml == null) {
18

    
19
            throw new Exception("NULL XML ENTITY CONFIGURATION   ");
20
        }
21

    
22
        InputStream inputStream = null;
23
        ByteArrayInputStream readerStream = null;
24
        ByteArrayOutputStream writerStream = null;
25
        try {
26
            inputStream = ClassLoader.getSystemResourceAsStream("eu/dnetlib/data/mapreduce/hbase/statsExport/" + "context.xsl");
27
            transformer = tFactory.newTransformer(new StreamSource(inputStream));
28

    
29
            readerStream = new ByteArrayInputStream(xml.getBytes("UTF-8"));
30

    
31
            writerStream = new ByteArrayOutputStream();
32
            transformer.transform(new StreamSource(readerStream), new StreamResult(writerStream));
33

    
34
            return writerStream.toString("UTF8");
35

    
36
        } catch (Exception e) {
37
            throw new Exception(e.getMessage(), e);
38
        } finally {
39
            inputStream.close();
40
            readerStream.close();
41
            writerStream.close();
42

    
43
        }
44

    
45
    }
46

    
47

    
48
}
(2-2/4)