annotate client/digitallibrary/dirInfo-xml.jsp @ 565:ce3031f00c44

fixed default file class for DocuDir.size()
author robcast
date Wed, 22 Dec 2010 14:46:00 +0100
parents fb2b2c41431d
children 0bd25e6ec151
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
565
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
1 <%@page import="digilib.io.FileOps"%>
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
2 <%@ page language="java" %><%!
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
3 // create DocumentBean instance for all JSP requests
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
4 digilib.servlet.DocumentBean docBean = new digilib.servlet.DocumentBean();
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
5
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
6 // initialize DocumentBean instance in JSP init
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
7 public void jspInit() {
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
8 try {
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
9 // set servlet init-parameter
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
10 docBean.setConfig(getServletConfig());
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
11 } catch (javax.servlet.ServletException e) {
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
12 System.out.println(e);
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
13 }
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
14 }
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
15 %><?xml version="1.0" encoding="UTF-8" ?>
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
16 <%
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
17 // process request
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
18 // get digilib config
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
19 digilib.servlet.DigilibConfiguration dlConfig = docBean.getDlConfig();
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
20 // parsing the query
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
21 digilib.servlet.DigilibRequest dlRequest = new digilib.servlet.DigilibRequest(request);
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
22 // dir cache
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
23 digilib.io.DocuDirCache dirCache = (digilib.io.DocuDirCache) dlConfig.getValue("servlet.dir.cache");
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
24 // get directory
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
25 digilib.io.DocuDirectory dir = dirCache.getDirectory(dlRequest.getFilePath());
565
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
26 FileOps.FileClass fc = FileOps.FileClass.IMAGE;
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
27 int dirSize = dir.size();
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
28
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
29 %><!-- Automatically generated XML snippet with directory info -->
565
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
30 <huhu/>
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
31 <dir><% if (dir != null) { %>
565
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
32 <size><%= dirSize %></size>
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
33 <name><%= dir.getDirName() %></name>
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
34 <fsname><%= dir.getDir().getPath() %></fsname>
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
35 <%
453
fb2b2c41431d nicer xml directory listing
robcast
parents: 452
diff changeset
36 if (!dlRequest.hasOption("mo", "dir")) {
565
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
37 for (int i = 0; i < dirSize; i++) {
ce3031f00c44 fixed default file class for DocuDir.size()
robcast
parents: 453
diff changeset
38 digilib.io.DocuDirent f = dir.get(i, fc);
452
965562ffcddd fixed bug in dirInfo-xml.jsp
robcast
parents: 211
diff changeset
39 String fn = (f != null) ? f.getName() : "null";
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
40 %> <file>
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
41 <index><%= i+1 %></index>
452
965562ffcddd fixed bug in dirInfo-xml.jsp
robcast
parents: 211
diff changeset
42 <name><%= digilib.io.FileOps.basename(fn) %></name>
965562ffcddd fixed bug in dirInfo-xml.jsp
robcast
parents: 211
diff changeset
43 <fsname><%= fn %></fsname>
965562ffcddd fixed bug in dirInfo-xml.jsp
robcast
parents: 211
diff changeset
44 </file>
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
45 <%
453
fb2b2c41431d nicer xml directory listing
robcast
parents: 452
diff changeset
46 } // for
fb2b2c41431d nicer xml directory listing
robcast
parents: 452
diff changeset
47 } // if not dironly
211
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
48 } // if dir
ab690d1ec129 directory listing in XML
robcast
parents:
diff changeset
49 %></dir>