annotate servlet/src/digilib/servlet/DigilibConfiguration.java @ 153:4980c969be4c

Servlet version 1.16a1 - cleanup of DigilibConfig class - now uses new Parameter and ParameterMap classes - new parameter default-quality
author robcast
date Wed, 03 Sep 2003 00:56:16 +0200
parents 04ad64b2137a
children 688ad0b8b0fa
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
1 /* DigilibConfiguration -- Holding all parameters for digilib servlet.
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
2
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
3 Digital Image Library servlet components
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
4
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
5 Copyright (C) 2001, 2002 Robert Casties (robcast@mail.berlios.de)
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
6
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
7 This program is free software; you can redistribute it and/or modify it
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
8 under the terms of the GNU General Public License as published by the
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
9 Free Software Foundation; either version 2 of the License, or (at your
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
10 option) any later version.
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
11
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
12 Please read license.txt for the full details. A copy of the GPL
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
13 may be found at http://www.gnu.org/copyleft/lgpl.html
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
14
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
16 along with this program; if not, write to the Free Software
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
18
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
19 */
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
20
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
21 package digilib.servlet;
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
22
86
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
23 import java.io.File;
92
757068ff7a26 New version 1.8b4.
robcast
parents: 86
diff changeset
24 import java.util.HashMap;
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
25 import java.util.Iterator;
86
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
26
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
27 import javax.servlet.ServletConfig;
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
28 import javax.servlet.ServletException;
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
29
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
30 import digilib.Utils;
86
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
31 import digilib.auth.AuthOps;
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
32 import digilib.auth.XMLAuthOps;
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
33 import digilib.image.DocuImage;
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
34 import digilib.image.DocuImageImpl;
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
35 import digilib.io.DocuDirCache;
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
36 import digilib.io.FileOps;
86
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
37 import digilib.io.XMLListLoader;
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
38
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
39 /** Class to hold the digilib servlet configuration parameters.
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
40 * The parameters can be read from the digilib-config file and be passed to
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
41 * other servlets or beans.<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
42 * errorImgFileName: image file to send in case of error.<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
43 * denyImgFileName: image file to send if access is denied.<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
44 * baseDirs: array of base directories in order of preference (prescaled
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
45 * versions first).<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
46 * useAuth: use authentication information.<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
47 * authConfPath: authentication configuration file.<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
48 * authOp: AuthOps instance for authentication.<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
49 * ...<br>
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
50 *
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
51 * @author casties
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
52 *
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
53 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
54 public class DigilibConfiguration extends ParameterMap {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
55
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
56 /** DocuImage class instance */
149
04ad64b2137a Servlet version 1.14b1
robcast
parents: 140
diff changeset
57 private Class docuImageClass = null;
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
58
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
59 /** Utils instance */
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
60 private Utils util = new Utils(5);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
61
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
62
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
63 /** Default constructor defines all parameters and their default values.
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
64 *
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
65 */
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
66 public DigilibConfiguration() {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
67 // create HashMap(20)
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
68 super(20);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
69
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
70 /*
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
71 * Definition of parameters and default values.
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
72 * System parameters that are not read from config file have a type 's'.
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
73 */
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
74
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
75 // digilib servlet version
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
76 putParameter("servlet.version", digilib.servlet.Scaler.dlVersion, null, 's');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
77 // configuration file location
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
78 putParameter("servlet.config.file", null, null, 's');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
79 // Utils instance
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
80 putParameter("servlet.util", util, null, 's');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
81 // DocuDirCache instance
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
82 putParameter("servlet.dir.cache", null, null, 's');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
83 // DocuImage class instance
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
84 putParameter("servlet.docuimage.class", digilib.image.JAIDocuImage.class, null, 's');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
85 // AuthOps instance for authentication
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
86 putParameter("servlet.auth.op", null, null, 's');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
87
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
88 /*
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
89 * parameters that can be read from config file have a type 'f'
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
90 */
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
91
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
92 // image file to send in case of error
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
93 putParameter("error-image", "/docuserver/images/icons/scalerror.gif", null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
94 // image file to send if access is denied
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
95 putParameter("denied-image", "/docuserver/images/icons/denied.gif", null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
96 // base directories in order of preference (prescaled versions last)
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
97 String[] bd = { "/docuserver/images", "/docuserver/scaled/small" };
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
98 putParameter("basedir-list", bd, null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
99 // use authentication information
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
100 putParameter("use-authorization", Boolean.TRUE, null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
101 // authentication configuration file
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
102 putParameter("auth-file", "/docuserver/www/digitallibrary/WEB-INF/digilib-auth.xml", null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
103 // sending image files as-is allowed
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
104 putParameter("sendfile-allowed", Boolean.TRUE, null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
105 // Debug level
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
106 putParameter("debug-level", new Integer(5), null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
107 // Type of DocuImage instance
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
108 putParameter("docuimage-class", "digilib.image.JAIDocuImage", null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
109 // part of URL used to indicate authorized access
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
110 putParameter("auth-url-path", "authenticated/", null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
111 // degree of subsampling on image load
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
112 putParameter("subsample-minimum", new Float(2f), null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
113 // default scaling quality
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
114 putParameter("default-quality", new Integer(1), null, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
115 }
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
116
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
117 /** Constructor taking a ServletConfig.
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
118 * Reads the config file location from an init parameter and loads the
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
119 * config file. Calls <code>readConfig()</code>.
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
120 *
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
121 * @see readConfig()
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
122 */
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
123 public DigilibConfiguration(ServletConfig c) throws Exception {
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
124 this();
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
125 readConfig(c);
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
126 }
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
127
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
128 /**
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
129 * read parameter list from the XML file in init parameter "config-file"
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
130 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
131 public void readConfig(ServletConfig c) throws Exception {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
132
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
133 /*
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
134 * Get config file name.
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
135 * The file name is first looked for as an init parameter, then in a fixed location
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
136 * in the webapp.
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
137 */
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
138 if (c == null) {
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
139 // no config no file...
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
140 return;
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
141 }
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
142 String fn = c.getInitParameter("config-file");
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
143 if (fn == null) {
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
144 fn = c.getServletContext().getRealPath("WEB-INF/digilib-config.xml");
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
145 if (fn == null) {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
146 util.dprintln(4, "setConfig: no param config-file");
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
147 throw new ServletException("ERROR no digilib config file!");
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
148 }
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
149 }
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
150 File f = new File(fn);
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
151 // setup config file list reader
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
152 XMLListLoader lilo =
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
153 new XMLListLoader("digilib-config", "parameter", "name", "value");
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
154 // read config file into HashMap
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
155 HashMap confTable = lilo.loadURL(f.toURL().toString());
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
156
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
157 // set config file path parameter
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
158 setValue("servlet.config.file", f.getCanonicalPath());
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
159
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
160 /*
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
161 * read parameters
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
162 */
86
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
163
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
164 for (Iterator i = confTable.keySet().iterator(); i.hasNext();) {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
165 String key = (String) i.next();
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
166 String val = (String) confTable.get(key);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
167 Parameter p = get(key);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
168 if (p != null) {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
169 if (p.getType() == 's') {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
170 // type 's' Parameters are not overwritten.
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
171 continue;
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
172 }
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
173 if (! p.setValueFromString(val)) {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
174 /*
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
175 * automatic conversion failed -- try special cases
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
176 */
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
177
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
178 // basedir-list
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
179 if (key == "basedir-list") {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
180 // split list into directories
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
181 String[] sa = FileOps.pathToArray(val);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
182 if (sa != null) {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
183 p.setValue(sa);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
184 }
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
185 }
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
186
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
187 }
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
188 } else {
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
189 // parameter unknown -- just add
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
190 putParameter(key, null, val, 'f');
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
191 }
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
192 }
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
193
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
194 /*
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
195 * further initialization
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
196 */
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
197
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
198 // debugLevel
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
199 util.setDebugLevel(getAsInt("debug-level"));
86
997ba69afb81 New version 1.8b1.
robcast
parents: 85
diff changeset
200 // directory cache
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
201 String[] bd = (String[]) getValue("basedir-list");
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
202 DocuDirCache dirCache = new DocuDirCache(bd);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
203 setValue("servlet.dir.cache", dirCache);
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
204 // useAuthentication
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
205 if (getAsBoolean("use-authorization")) {
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
206 // DB version
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
207 //authOp = new DBAuthOpsImpl(util);
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
208 // XML version
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
209 String authConfPath = getAsString("auth-file");
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
210 AuthOps authOp = new XMLAuthOps(util, authConfPath);
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
211 setValue("servlet.auth.op", authOp);
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
212 }
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
213 // DocuImage class
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
214 docuImageClass = (Class) getValue("servlet.docuimage.class");
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
215 }
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
216
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
217 /** Creates a new DocuImage instance.
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
218 *
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
219 * The type of DocuImage is specified by docuImageType.
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
220 *
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
221 * @return DocuImage
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
222 */
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
223 public DocuImage getDocuImageInstance() {
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
224 DocuImageImpl di = null;
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
225 try {
149
04ad64b2137a Servlet version 1.14b1
robcast
parents: 140
diff changeset
226 if (docuImageClass == null) {
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
227 docuImageClass = Class.forName(getAsString("docuimage-class"));
149
04ad64b2137a Servlet version 1.14b1
robcast
parents: 140
diff changeset
228 }
04ad64b2137a Servlet version 1.14b1
robcast
parents: 140
diff changeset
229 di = (DocuImageImpl) docuImageClass.newInstance();
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
230 di.setUtils(util);
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
231 } catch (Exception e) {
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
232 }
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
233 return di;
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
234 }
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
235
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
236 /**
153
4980c969be4c Servlet version 1.16a1
robcast
parents: 149
diff changeset
237 * @return
73
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
238 */
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
239 public Utils getUtil() {
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
240 return util;
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
241 }
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
242
3b8797fc3e90 New servlet version 1.5b.
robcast
parents:
diff changeset
243 }