annotate servlet/src/digilib/io/DocuFile.java @ 130:c36944be0b58

Servlet Version 1.11a1with original size(!) - new meta data file loader - new parameter ddpi, ddpix, ddpiy (client->servlet) - new parameter mo=osize - osize scales based on ddpi and original dpi (currently only equally for x and y)
author robcast
date Wed, 02 Jul 2003 00:02:18 +0200
parents a32e8c80e2f2
children 04ad64b2137a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
86
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
1 /* DocuFile.java -- digilib image file class.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
2
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
3 Digital Image Library servlet components
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
4
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
5 Copyright (C) 2003 Robert Casties (robcast@mail.berlios.de)
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
6
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
7 This program is free software; you can redistribute it and/or modify it
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
8 under the terms of the GNU General Public License as published by the
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
9 Free Software Foundation; either version 2 of the License, or (at your
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
10 option) any later version.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
11
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
12 Please read license.txt for the full details. A copy of the GPL
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
13 may be found at http://www.gnu.org/copyleft/lgpl.html
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
14
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
16 along with this program; if not, write to the Free Software
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
18
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
19 * Created on 25.02.2003
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
20 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
21
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
22 package digilib.io;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
23
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
24 import java.awt.Dimension;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
25 import java.io.File;
122
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
26 import java.io.IOException;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
27
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
28 import digilib.image.DocuInfo;
86
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
29
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
30 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
31 * @author casties
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
32 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
33 public class DocuFile {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
34
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
35 // file object
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
36 private File file = null;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
37 // parent DocuFileset
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
38 private DocuFileset parent = null;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
39 // mime file type
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
40 private String mimetype = null;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
41 // image size in pixels
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
42 private Dimension pixelSize = null;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
43 // image size and type are valid
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
44 private boolean checked = false;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
45
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
46 public DocuFile(File f) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
47 file = f;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
48 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
49
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
50 /** Returns the file name (without path).
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
51 *
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
52 * @return
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
53 */
86
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
54 public String getName() {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
55 if (file != null) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
56 return file.getName();
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
57 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
58 return null;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
59 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
60
122
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
61
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
62 /** Checks the file using the provided DocuInfo instance.
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
63 *
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
64 * @param info
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents: 122
diff changeset
65 */
122
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
66 public void check(DocuInfo info) {
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
67 try {
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
68 info.checkFile(this);
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
69 } catch (IOException e) {
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
70 checked = false;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
71 }
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
72 }
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents: 86
diff changeset
73
86
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
74 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
75 * @return File
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
76 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
77 public File getFile() {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
78 return file;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
79 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
80
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
81 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
82 * @return Dimension
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
83 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
84 public Dimension getSize() {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
85 return pixelSize;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
86 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
87
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
88 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
89 * @return String
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
90 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
91 public String getMimetype() {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
92 return mimetype;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
93 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
94
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
95 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
96 * Sets the file.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
97 * @param file The file to set
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
98 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
99 public void setFile(File f) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
100 this.file = f;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
101 mimetype = FileOps.mimeForFile(f);
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
102 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
103
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
104 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
105 * Sets the imageSize.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
106 * @param imageSize The imageSize to set
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
107 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
108 public void setSize(Dimension imageSize) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
109 this.pixelSize = imageSize;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
110 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
111
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
112 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
113 * Sets the mimetype.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
114 * @param mimetype The mimetype to set
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
115 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
116 public void setMimetype(String mimetype) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
117 this.mimetype = mimetype;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
118 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
119
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
120 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
121 * @return DocuFileset
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
122 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
123 public DocuFileset getParent() {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
124 return parent;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
125 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
126
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
127 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
128 * Sets the parent.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
129 * @param parent The parent to set
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
130 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
131 public void setParent(DocuFileset parent) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
132 this.parent = parent;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
133 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
134
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
135 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
136 * @return boolean
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
137 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
138 public boolean isChecked() {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
139 return checked;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
140 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
141
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
142 /**
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
143 * Sets the checked.
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
144 * @param checked The checked to set
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
145 */
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
146 public void setChecked(boolean checked) {
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
147 this.checked = checked;
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
148 }
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
149
997ba69afb81 New version 1.8b1.
robcast
parents:
diff changeset
150 }