Help generation: add the ability to generate an image from inlined Scilab code
[scilab.git] / scilab / modules / helptools / src / java / org / scilab / modules / helptools / DocbookElement.java
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2010 - Calixte DENIZET
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10  *
11  */
12
13 package org.scilab.modules.helptools;
14
15 import java.util.Map;
16
17 public class DocbookElement {
18
19     private Map<String, String> attributes;
20     private String name;
21     private StringBuilder contents;
22     private String uri;
23
24     /**
25      * Default constructor
26      * @param name the tag name
27      * @param attributes the attributes and its values
28      */
29     protected DocbookElement(String name, String uri, Map attributes) {
30         this.name = name;
31         this.attributes = attributes;
32         this.uri = uri;
33         contents = new StringBuilder();
34     }
35
36     /**
37      * @return a new DocbookElement
38      */
39     public DocbookElement getNewInstance(String name, String uri, Map attributes) {
40         return new DocbookElement(name, uri, attributes);
41     }
42
43     /**
44      * @return the tag name
45      */
46     public String getName() {
47         return name;
48     }
49
50     /**
51      * @return the tag uri
52      */
53     public String getURI() {
54         return uri;
55     }
56
57     /**
58      * @return the attributes
59      */
60     public Map<String, String> getAttributes() {
61         return attributes;
62     }
63
64     /**
65      * @return the buffer used to add contents of the tag
66      */
67     public StringBuilder getStringBuilder() {
68         return contents;
69     }
70
71     /**
72      * @param the buffer to use
73      */
74     public void setStringBuilder(StringBuilder buf) {
75         contents = buf;
76     }
77
78     /**
79      * This method can be used to store other things...
80      * and it should be override since it does nothing...
81      * I created it to handle the case where the converter has two String (or more)
82      * to generate with the same data.
83      * @param obj the Object to append.
84      */
85     public void append(Object obj) { }
86
87     /**
88      * This method can be used to get what it has been stored with append
89      * @return an object
90      */
91     public Object get() {
92         return null;
93     }
94
95     /**
96      * Add a parent to retrieve its contents
97      * @param elem the parent
98      */
99     public void setParent(DocbookElement elem) { }
100
101     /**
102      * @return the parent element
103      */
104     public DocbookElement getParent() {
105         return null;
106     }
107 }