X-Git-Url: https://gitweb.fperrin.net/?p=GpsPrune.git;a=blobdiff_plain;f=src%2Ftim%2Fprune%2Fload%2FFileCacher.java;h=ca7a4abba8f5abac4f855e4b4127a65b9b0c5ba1;hp=a151c2e285022f48c5ffe8bbdf2c3d8433c09df0;hb=HEAD;hpb=2302358503c38817e19f6e529f6c9e530aac0e86 diff --git a/src/tim/prune/load/FileCacher.java b/src/tim/prune/load/FileCacher.java index a151c2e..ca7a4ab 100644 --- a/src/tim/prune/load/FileCacher.java +++ b/src/tim/prune/load/FileCacher.java @@ -10,37 +10,30 @@ import java.util.ArrayList; * Class to load the contents of a file * into an array for later retrieval */ -public class FileCacher +public class FileCacher extends ContentCacher { - /** File to cache */ - private File _file = null; - /** Array to hold lines of file */ - private String[] _contentArray = null; - - /** * Constructor * @param inFile File object to cache */ public FileCacher(File inFile) { - _file = inFile; - loadFile(); + loadFile(inFile); } /** * Load the specified file into memory */ - private void loadFile() + private void loadFile(File inFile) { ArrayList contentList = new ArrayList(); - if (_file != null && _file.exists() && _file.canRead()) + if (inFile != null && inFile.exists() && inFile.canRead()) { BufferedReader reader = null; try { - reader = new BufferedReader(new FileReader(_file)); + reader = new BufferedReader(new FileReader(inFile)); String currLine = reader.readLine(); if (currLine != null && currLine.startsWith(" getNumLines()) numToCopy = getNumLines(); - int size = numToCopy; - if (size < MIN_SNIPPET_SIZE) size = MIN_SNIPPET_SIZE; - String[] result = new String[size]; - // Copy Strings across - System.arraycopy(_contentArray, 0, result, 0, numToCopy); - // Chop Strings to max width if necessary - if (inMaxWidth > 10) - { - for (int i=0; i inMaxWidth) - result[i] = result[i].trim(); - if (result[i].length() > inMaxWidth) - result[i] = result[i].substring(0, inMaxWidth); - } - } - } - return result; - } - - /** - * @return the number of non-blank lines in the file - */ - public int getNumLines() - { - return _contentArray.length; - } - - - /** - * Clear the memory - */ - public void clear() - { - _file = null; - _contentArray = null; + setContents(contentList); } }