xref: /unit/src/java/nginx/unit/JspPropertyGroup.java (revision 977:4f9268f27b57)
1*977Smax.romanov@gmail.com package nginx.unit;
2*977Smax.romanov@gmail.com 
3*977Smax.romanov@gmail.com import java.util.ArrayList;
4*977Smax.romanov@gmail.com import java.util.Collection;
5*977Smax.romanov@gmail.com import java.util.List;
6*977Smax.romanov@gmail.com 
7*977Smax.romanov@gmail.com import javax.servlet.descriptor.JspPropertyGroupDescriptor;
8*977Smax.romanov@gmail.com 
9*977Smax.romanov@gmail.com import org.w3c.dom.Node;
10*977Smax.romanov@gmail.com import org.w3c.dom.NodeList;
11*977Smax.romanov@gmail.com 
12*977Smax.romanov@gmail.com public class JspPropertyGroup implements JspPropertyGroupDescriptor
13*977Smax.romanov@gmail.com {
14*977Smax.romanov@gmail.com     private final List<String> url_patterns_ = new ArrayList<>();
15*977Smax.romanov@gmail.com     private String el_ignored_ = null;
16*977Smax.romanov@gmail.com     private String page_encoding_ = null;
17*977Smax.romanov@gmail.com     private String scripting_invalid_ = null;
18*977Smax.romanov@gmail.com     private String is_xml_ = null;
19*977Smax.romanov@gmail.com     private final List<String> include_preludes_ = new ArrayList<>();
20*977Smax.romanov@gmail.com     private final List<String> include_codas_ = new ArrayList<>();
21*977Smax.romanov@gmail.com 
22*977Smax.romanov@gmail.com     private String deffered_syntax_allowed_as_literal_ = null;
23*977Smax.romanov@gmail.com     private String trim_directive_whitespaces_ = null;
24*977Smax.romanov@gmail.com     private String default_content_type_ = null;
25*977Smax.romanov@gmail.com     private String buffer_ = null;
26*977Smax.romanov@gmail.com     private String error_on_undeclared_namespace_ = null;
27*977Smax.romanov@gmail.com 
JspPropertyGroup(NodeList nodes)28*977Smax.romanov@gmail.com     public JspPropertyGroup(NodeList nodes)
29*977Smax.romanov@gmail.com     {
30*977Smax.romanov@gmail.com         for (int i = 0; i < nodes.getLength(); i++) {
31*977Smax.romanov@gmail.com             Node node = nodes.item(i);
32*977Smax.romanov@gmail.com             String tag_name = node.getNodeName();
33*977Smax.romanov@gmail.com 
34*977Smax.romanov@gmail.com             if (tag_name.equals("url-pattern")) {
35*977Smax.romanov@gmail.com                 url_patterns_.add(node.getTextContent().trim());
36*977Smax.romanov@gmail.com                 continue;
37*977Smax.romanov@gmail.com             }
38*977Smax.romanov@gmail.com 
39*977Smax.romanov@gmail.com             if (tag_name.equals("el-ignored")) {
40*977Smax.romanov@gmail.com                 el_ignored_ = node.getTextContent().trim();
41*977Smax.romanov@gmail.com                 continue;
42*977Smax.romanov@gmail.com             }
43*977Smax.romanov@gmail.com 
44*977Smax.romanov@gmail.com             if (tag_name.equals("page-encoding")) {
45*977Smax.romanov@gmail.com                 page_encoding_ = node.getTextContent().trim();
46*977Smax.romanov@gmail.com                 continue;
47*977Smax.romanov@gmail.com             }
48*977Smax.romanov@gmail.com 
49*977Smax.romanov@gmail.com             if (tag_name.equals("scripting-invalid")) {
50*977Smax.romanov@gmail.com                 scripting_invalid_ = node.getTextContent().trim();
51*977Smax.romanov@gmail.com                 continue;
52*977Smax.romanov@gmail.com             }
53*977Smax.romanov@gmail.com 
54*977Smax.romanov@gmail.com             if (tag_name.equals("is-xml")) {
55*977Smax.romanov@gmail.com                 is_xml_ = node.getTextContent().trim();
56*977Smax.romanov@gmail.com                 continue;
57*977Smax.romanov@gmail.com             }
58*977Smax.romanov@gmail.com 
59*977Smax.romanov@gmail.com             if (tag_name.equals("include-prelude")) {
60*977Smax.romanov@gmail.com                 include_preludes_.add(node.getTextContent().trim());
61*977Smax.romanov@gmail.com                 continue;
62*977Smax.romanov@gmail.com             }
63*977Smax.romanov@gmail.com 
64*977Smax.romanov@gmail.com             if (tag_name.equals("include-coda")) {
65*977Smax.romanov@gmail.com                 include_codas_.add(node.getTextContent().trim());
66*977Smax.romanov@gmail.com                 continue;
67*977Smax.romanov@gmail.com             }
68*977Smax.romanov@gmail.com 
69*977Smax.romanov@gmail.com             if (tag_name.equals("deferred-syntax-allowed-as-literal")) {
70*977Smax.romanov@gmail.com                 deffered_syntax_allowed_as_literal_ = node.getTextContent().trim();
71*977Smax.romanov@gmail.com                 continue;
72*977Smax.romanov@gmail.com             }
73*977Smax.romanov@gmail.com 
74*977Smax.romanov@gmail.com             if (tag_name.equals("trim-directive-whitespaces")) {
75*977Smax.romanov@gmail.com                 trim_directive_whitespaces_ = node.getTextContent().trim();
76*977Smax.romanov@gmail.com                 continue;
77*977Smax.romanov@gmail.com             }
78*977Smax.romanov@gmail.com 
79*977Smax.romanov@gmail.com             if (tag_name.equals("default-content-type")) {
80*977Smax.romanov@gmail.com                 default_content_type_ = node.getTextContent().trim();
81*977Smax.romanov@gmail.com                 continue;
82*977Smax.romanov@gmail.com             }
83*977Smax.romanov@gmail.com 
84*977Smax.romanov@gmail.com             if (tag_name.equals("buffer")) {
85*977Smax.romanov@gmail.com                 buffer_ = node.getTextContent().trim();
86*977Smax.romanov@gmail.com                 continue;
87*977Smax.romanov@gmail.com             }
88*977Smax.romanov@gmail.com 
89*977Smax.romanov@gmail.com             if (tag_name.equals("error-on-undeclared-namespace")) {
90*977Smax.romanov@gmail.com                 error_on_undeclared_namespace_ = node.getTextContent().trim();
91*977Smax.romanov@gmail.com                 continue;
92*977Smax.romanov@gmail.com             }
93*977Smax.romanov@gmail.com         }
94*977Smax.romanov@gmail.com 
95*977Smax.romanov@gmail.com     }
96*977Smax.romanov@gmail.com 
97*977Smax.romanov@gmail.com     @Override
getUrlPatterns()98*977Smax.romanov@gmail.com     public Collection<String> getUrlPatterns()
99*977Smax.romanov@gmail.com     {
100*977Smax.romanov@gmail.com         return new ArrayList<>(url_patterns_);
101*977Smax.romanov@gmail.com     }
102*977Smax.romanov@gmail.com 
103*977Smax.romanov@gmail.com     @Override
getElIgnored()104*977Smax.romanov@gmail.com     public String getElIgnored()
105*977Smax.romanov@gmail.com     {
106*977Smax.romanov@gmail.com         return el_ignored_;
107*977Smax.romanov@gmail.com     }
108*977Smax.romanov@gmail.com 
109*977Smax.romanov@gmail.com     @Override
getPageEncoding()110*977Smax.romanov@gmail.com     public String getPageEncoding()
111*977Smax.romanov@gmail.com     {
112*977Smax.romanov@gmail.com         return page_encoding_;
113*977Smax.romanov@gmail.com     }
114*977Smax.romanov@gmail.com 
115*977Smax.romanov@gmail.com     @Override
getScriptingInvalid()116*977Smax.romanov@gmail.com     public String getScriptingInvalid()
117*977Smax.romanov@gmail.com     {
118*977Smax.romanov@gmail.com         return scripting_invalid_;
119*977Smax.romanov@gmail.com     }
120*977Smax.romanov@gmail.com 
121*977Smax.romanov@gmail.com     @Override
getIsXml()122*977Smax.romanov@gmail.com     public String getIsXml()
123*977Smax.romanov@gmail.com     {
124*977Smax.romanov@gmail.com         return is_xml_;
125*977Smax.romanov@gmail.com     }
126*977Smax.romanov@gmail.com 
127*977Smax.romanov@gmail.com     @Override
getIncludePreludes()128*977Smax.romanov@gmail.com     public Collection<String> getIncludePreludes()
129*977Smax.romanov@gmail.com     {
130*977Smax.romanov@gmail.com         return new ArrayList<>(include_preludes_);
131*977Smax.romanov@gmail.com     }
132*977Smax.romanov@gmail.com 
133*977Smax.romanov@gmail.com     @Override
getIncludeCodas()134*977Smax.romanov@gmail.com     public Collection<String> getIncludeCodas()
135*977Smax.romanov@gmail.com     {
136*977Smax.romanov@gmail.com         return new ArrayList<>(include_codas_);
137*977Smax.romanov@gmail.com     }
138*977Smax.romanov@gmail.com 
139*977Smax.romanov@gmail.com     @Override
getDeferredSyntaxAllowedAsLiteral()140*977Smax.romanov@gmail.com     public String getDeferredSyntaxAllowedAsLiteral()
141*977Smax.romanov@gmail.com     {
142*977Smax.romanov@gmail.com         return deffered_syntax_allowed_as_literal_;
143*977Smax.romanov@gmail.com     }
144*977Smax.romanov@gmail.com 
145*977Smax.romanov@gmail.com     @Override
getTrimDirectiveWhitespaces()146*977Smax.romanov@gmail.com     public String getTrimDirectiveWhitespaces()
147*977Smax.romanov@gmail.com     {
148*977Smax.romanov@gmail.com         return trim_directive_whitespaces_;
149*977Smax.romanov@gmail.com     }
150*977Smax.romanov@gmail.com 
151*977Smax.romanov@gmail.com     @Override
getDefaultContentType()152*977Smax.romanov@gmail.com     public String getDefaultContentType()
153*977Smax.romanov@gmail.com     {
154*977Smax.romanov@gmail.com         return default_content_type_;
155*977Smax.romanov@gmail.com     }
156*977Smax.romanov@gmail.com 
157*977Smax.romanov@gmail.com     @Override
getBuffer()158*977Smax.romanov@gmail.com     public String getBuffer()
159*977Smax.romanov@gmail.com     {
160*977Smax.romanov@gmail.com         return buffer_;
161*977Smax.romanov@gmail.com     }
162*977Smax.romanov@gmail.com 
163*977Smax.romanov@gmail.com     @Override
getErrorOnUndeclaredNamespace()164*977Smax.romanov@gmail.com     public String getErrorOnUndeclaredNamespace()
165*977Smax.romanov@gmail.com     {
166*977Smax.romanov@gmail.com         return error_on_undeclared_namespace_;
167*977Smax.romanov@gmail.com     }
168*977Smax.romanov@gmail.com }
169*977Smax.romanov@gmail.com 
170