1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 /*
24  * DataWriter.java
25  *
26  * parent of all XXXWriter classes used by
27  * Converter
28  */
29 
30 package com.sun.star.tooling.converter;
31 
32 import java.io.BufferedOutputStream;
33 import java.io.IOException;
34 import java.io.OutputStreamWriter;
35 
36 /**
37  * The abstract parent class of all converter writer classes
38  *
39  * @author Christian Schmidt
40  */
41 abstract public class DataWriter extends OutputStreamWriter {
42     protected final String seperator = new String("|");
43 
44     /**
45      * the char sequence used as line seperator
46      */
47     protected final String lineEnd   = java.lang.System.getProperty(
48                                              "line.seperator", "\n");
49 
50     /** Creates a new instance of DataWriter */
51     /**
52      * @param bos the buffered output stream holding the data
53      * @param encoding the encoding to use for read from bos
54      * @throws java.io.UnsupportedEncodingException
55      */
DataWriter(BufferedOutputStream bos, String encoding)56     public DataWriter(BufferedOutputStream bos, String encoding)
57             throws java.io.UnsupportedEncodingException {
58         super(bos, encoding);
59     }
60 
61 //    abstract protected void writeData(Map[] data) throws java.io.IOException;
62 
63     /**
64      * get the data that should be written from the DataHandler
65      *
66      * @param handler the DataHandler having the data
67      * @throws java.io.IOException
68      */
getDataFrom(DataHandler handler)69     abstract protected void getDataFrom(DataHandler handler)
70             throws java.io.IOException;
71 
72     /**
73      * write the Data
74      *
75      * @throws java.io.IOException
76      */
writeData()77     abstract protected void writeData() throws java.io.IOException;
78 
79     /**
80      * @param handler
81      * @throws IOException
82      */
getDatafrom(DataHandler handler)83     abstract protected void getDatafrom(DataHandler handler) throws IOException;
84 }