summaryrefslogtreecommitdiffstats
path: root/Master/Reference Architectures and Patterns/hjp5/examples/FilePrintHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'Master/Reference Architectures and Patterns/hjp5/examples/FilePrintHelper.java')
-rw-r--r--Master/Reference Architectures and Patterns/hjp5/examples/FilePrintHelper.java52
1 files changed, 52 insertions, 0 deletions
diff --git a/Master/Reference Architectures and Patterns/hjp5/examples/FilePrintHelper.java b/Master/Reference Architectures and Patterns/hjp5/examples/FilePrintHelper.java
new file mode 100644
index 0000000..e93ee46
--- /dev/null
+++ b/Master/Reference Architectures and Patterns/hjp5/examples/FilePrintHelper.java
@@ -0,0 +1,52 @@
+/* FilePrintHelper.java */
+
+import java.util.*;
+
+public class FilePrintHelper
+{
+ //---Membervariablen----------------------------------
+ Vector pageinfo;
+
+ //---Konstruktor--------------------------------------
+ public FilePrintHelper()
+ {
+ pageinfo = new Vector();
+ }
+
+ //---Seitendefinition und -abfrage--------------------
+ public void createPage(int page)
+ {
+ for (int i = pageinfo.size(); i <= page; ++i) {
+ pageinfo.addElement(new Entry());
+ }
+ }
+
+ public boolean knownPage(int page)
+ {
+ return page < pageinfo.size();
+ }
+
+ //---Verwaltung der Offsets---------------------------
+ public long getFileOffset(int page)
+ {
+ Entry entry = (Entry)pageinfo.elementAt(page);
+ return entry.fileoffset;
+ }
+
+ public void setFileOffset(int page, long fileoffset)
+ {
+ Entry entry = (Entry)pageinfo.elementAt(page);
+ entry.fileoffset = fileoffset;
+ }
+
+ //---Lokale Klasse Entry------------------------------
+ static class Entry
+ {
+ public long fileoffset;
+
+ public Entry()
+ {
+ this.fileoffset = -1;
+ }
+ }
+} \ No newline at end of file