Project

General

Profile

« Previous | Next » 

Revision 56504

- Made Serializers methods non static to improve readability and maintenability.
- Code cleanup

View differences:

ContextTransformer.java
1 1
package eu.dnetlib.data.mapreduce.hbase.statsExport.utils;
2 2

  
3
import org.apache.log4j.Logger;
4

  
3
import org.apache.commons.io.IOUtils;
5 4
import javax.xml.transform.Transformer;
6 5
import javax.xml.transform.TransformerFactory;
7 6
import javax.xml.transform.stream.StreamResult;
......
9 8
import java.io.ByteArrayInputStream;
10 9
import java.io.ByteArrayOutputStream;
11 10
import java.io.InputStream;
11
import java.nio.charset.StandardCharsets;
12 12

  
13 13
public class ContextTransformer {
14 14

  
15
    private Logger log = Logger.getLogger(this.getClass());
16

  
17 15
    public String transformXSL(String xml) throws Exception {
18 16
        Transformer transformer;
19 17
        TransformerFactory tFactory = TransformerFactory.newInstance();
20 18

  
21 19
        if (xml == null) {
22

  
23
            throw new Exception("NULL XML ENTITY CONFIGURATION   ");
20
            throw new IllegalArgumentException("Input xml should not be null!");
24 21
        }
25 22

  
26 23
        InputStream inputStream = null;
27 24
        ByteArrayInputStream readerStream = null;
28 25
        ByteArrayOutputStream writerStream = null;
26

  
29 27
        try {
30 28
            inputStream = ClassLoader.getSystemResourceAsStream("eu/dnetlib/data/mapreduce/hbase/statsExport/" + "context.xsl");
31 29
            transformer = tFactory.newTransformer(new StreamSource(inputStream));
32 30

  
33
            readerStream = new ByteArrayInputStream(xml.getBytes("UTF-8"));
31
            readerStream = new ByteArrayInputStream(xml.getBytes(StandardCharsets.UTF_8));
34 32

  
35 33
            writerStream = new ByteArrayOutputStream();
36 34
            transformer.transform(new StreamSource(readerStream), new StreamResult(writerStream));
37 35

  
38 36
            return writerStream.toString("UTF8");
39

  
40
        } catch (Exception e) {
41

  
42
            log.error(e.getMessage());
43
            throw new Exception(e.getMessage(), e);
44 37
        } finally {
45
            inputStream.close();
46
            readerStream.close();
47
            writerStream.close();
48

  
38
            IOUtils.closeQuietly(inputStream);
39
            IOUtils.closeQuietly(readerStream);
40
            IOUtils.closeQuietly(writerStream);
49 41
        }
50

  
51 42
    }
52

  
53

  
54 43
}

Also available in: Unified diff