net.icite.datastore
Class WTFBase
java.lang.Object
net.icite.datastore.WTFBase
- All Implemented Interfaces:
- DatastoreBase
- public class WTFBase
- extends java.lang.Object
- implements DatastoreBase
WTFBase is a kind-of database for processing files
in WTF (Whoopdedoo Text Format). At this point, it mostly loads WTF files, and stores
their data in a hashtable where they can be accessed by key. It also keeps a watch on
file changes (it can watch non-WTF files too), and can reload WTF files automatically.
- Version:
- $Id: WTFBase.java,v 1.0 2005/04/30 17:15:00 jay Exp $
- Author:
- Jay Fienberg
Method Summary |
void |
addToCatalog(java.lang.Object key,
java.util.ArrayList alist)
|
void |
addToCatalog(java.lang.Object key,
java.util.Map map)
|
java.lang.String |
catalogDump()
|
java.lang.String |
fileWatchDump()
|
java.lang.String |
getCanonicalSourceName(java.lang.String filecomp,
java.lang.String fileDir)
|
java.util.ArrayList |
getCatalogKey(org.apache.commons.collections.keyvalue.MultiKey key)
|
java.util.ArrayList |
getCatalogKey(java.lang.Object key)
|
java.util.ArrayList |
getCatalogKey(java.lang.String key)
|
java.lang.String |
getComparator()
|
private java.lang.String |
getFullFileName(java.lang.String file,
java.lang.String fileDir)
|
java.util.ArrayList |
getNewView(java.util.ArrayList keys)
|
java.lang.String |
getSecureHash(java.lang.String data)
|
private boolean |
includesPath(java.lang.String file)
|
boolean |
isFileWatched(java.lang.String file)
|
private boolean |
isURL(java.lang.String file)
|
boolean |
isWatchedFileCurrent(java.lang.String fullFile)
|
boolean |
isWatchedFileCurrent(java.lang.String file,
java.lang.String fileDir)
|
boolean |
isWatchedFileMissing(java.lang.String fullFile)
|
void |
load(java.util.ArrayList filelist,
java.lang.String defaultEncoding,
java.lang.String fileDir)
|
private void |
load(java.lang.String file,
java.lang.String encoding)
|
void |
load(java.lang.String file,
java.lang.String encoding,
java.lang.String fileDir)
|
private void |
loader(java.io.BufferedReader reader,
java.lang.String fullfile)
|
void |
loadFromQueue()
|
void |
runFileWatcher()
|
void |
setComparator(java.lang.String comparator)
|
void |
setDefaultCatalogKeyValue(java.lang.String val)
|
void |
setDefaultMultiSectionMode(boolean mode)
|
void |
setFileWatchTimer(int timeInMinutes)
|
void |
setKeysToClearOnLoad(java.lang.String[] keys)
|
void |
stopFileWatcher()
|
void |
updateWatchedFile(java.lang.String file,
java.lang.Long mod,
boolean missing)
|
void |
watchFile(java.util.ArrayList filelist,
java.lang.String defaultEncoding,
boolean queue)
|
void |
watchFile(java.util.ArrayList filelist,
java.lang.String defaultEncoding,
java.lang.String fileDir,
boolean queue)
|
void |
watchFile(java.lang.String filename,
java.lang.String encoding,
boolean queue)
|
void |
watchFile(java.lang.String filename,
java.lang.String encoding,
java.lang.String fileDir,
boolean queue)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_logger
protected static org.apache.commons.logging.Log _logger
Comparator
protected static java.lang.String Comparator
sourceList
private static java.util.ArrayList sourceList
catalog
private static org.apache.commons.collections.map.HashedMap catalog
fileWatch
private static org.apache.commons.collections.map.HashedMap fileWatch
defaultCatalogKeyValue
private static java.lang.String defaultCatalogKeyValue
keysToClearOnLoad
private static java.lang.String[] keysToClearOnLoad
defaultMultiSectionMode
private static boolean defaultMultiSectionMode
fwDaemon
private static WTFBase.FileWatchDaemon fwDaemon
fwProcess
private static java.lang.Thread fwProcess
fwSleep
private static long fwSleep
strictKeyValueSeparators
private static final java.lang.String strictKeyValueSeparators
- See Also:
- Constant Field Values
whiteSpaceChars
private static final java.lang.String whiteSpaceChars
- See Also:
- Constant Field Values
commentChar
private static final char commentChar
- See Also:
- Constant Field Values
sectionChar
private static final char sectionChar
- See Also:
- Constant Field Values
multiSectionChar
private static final char multiSectionChar
- See Also:
- Constant Field Values
keyValueSeparators
private static final java.lang.String keyValueSeparators
- See Also:
- Constant Field Values
WTFBase
public WTFBase()
catalogDump
public java.lang.String catalogDump()
- Specified by:
catalogDump
in interface DatastoreBase
fileWatchDump
public java.lang.String fileWatchDump()
- Specified by:
fileWatchDump
in interface DatastoreBase
loader
private void loader(java.io.BufferedReader reader,
java.lang.String fullfile)
load
public void load(java.lang.String file,
java.lang.String encoding,
java.lang.String fileDir)
- Specified by:
load
in interface DatastoreBase
load
public void load(java.util.ArrayList filelist,
java.lang.String defaultEncoding,
java.lang.String fileDir)
- Specified by:
load
in interface DatastoreBase
load
private void load(java.lang.String file,
java.lang.String encoding)
setDefaultCatalogKeyValue
public void setDefaultCatalogKeyValue(java.lang.String val)
- Specified by:
setDefaultCatalogKeyValue
in interface DatastoreBase
setDefaultMultiSectionMode
public void setDefaultMultiSectionMode(boolean mode)
- Specified by:
setDefaultMultiSectionMode
in interface DatastoreBase
setKeysToClearOnLoad
public void setKeysToClearOnLoad(java.lang.String[] keys)
- Specified by:
setKeysToClearOnLoad
in interface DatastoreBase
addToCatalog
public void addToCatalog(java.lang.Object key,
java.util.Map map)
- Specified by:
addToCatalog
in interface DatastoreBase
addToCatalog
public void addToCatalog(java.lang.Object key,
java.util.ArrayList alist)
- Specified by:
addToCatalog
in interface DatastoreBase
getCatalogKey
public java.util.ArrayList getCatalogKey(java.lang.Object key)
- Specified by:
getCatalogKey
in interface DatastoreBase
getCatalogKey
public java.util.ArrayList getCatalogKey(java.lang.String key)
- Specified by:
getCatalogKey
in interface DatastoreBase
getCatalogKey
public java.util.ArrayList getCatalogKey(org.apache.commons.collections.keyvalue.MultiKey key)
- Specified by:
getCatalogKey
in interface DatastoreBase
isURL
private boolean isURL(java.lang.String file)
includesPath
private boolean includesPath(java.lang.String file)
getFullFileName
private java.lang.String getFullFileName(java.lang.String file,
java.lang.String fileDir)
getCanonicalSourceName
public java.lang.String getCanonicalSourceName(java.lang.String filecomp,
java.lang.String fileDir)
- Specified by:
getCanonicalSourceName
in interface DatastoreBase
getNewView
public java.util.ArrayList getNewView(java.util.ArrayList keys)
- Specified by:
getNewView
in interface DatastoreBase
watchFile
public void watchFile(java.lang.String filename,
java.lang.String encoding,
java.lang.String fileDir,
boolean queue)
- Specified by:
watchFile
in interface DatastoreBase
watchFile
public void watchFile(java.util.ArrayList filelist,
java.lang.String defaultEncoding,
java.lang.String fileDir,
boolean queue)
- Specified by:
watchFile
in interface DatastoreBase
watchFile
public void watchFile(java.lang.String filename,
java.lang.String encoding,
boolean queue)
- Specified by:
watchFile
in interface DatastoreBase
watchFile
public void watchFile(java.util.ArrayList filelist,
java.lang.String defaultEncoding,
boolean queue)
- Specified by:
watchFile
in interface DatastoreBase
isFileWatched
public boolean isFileWatched(java.lang.String file)
- Specified by:
isFileWatched
in interface DatastoreBase
updateWatchedFile
public void updateWatchedFile(java.lang.String file,
java.lang.Long mod,
boolean missing)
- Specified by:
updateWatchedFile
in interface DatastoreBase
isWatchedFileCurrent
public boolean isWatchedFileCurrent(java.lang.String file,
java.lang.String fileDir)
- Specified by:
isWatchedFileCurrent
in interface DatastoreBase
isWatchedFileCurrent
public boolean isWatchedFileCurrent(java.lang.String fullFile)
- Specified by:
isWatchedFileCurrent
in interface DatastoreBase
isWatchedFileMissing
public boolean isWatchedFileMissing(java.lang.String fullFile)
- Specified by:
isWatchedFileMissing
in interface DatastoreBase
loadFromQueue
public void loadFromQueue()
- Specified by:
loadFromQueue
in interface DatastoreBase
setFileWatchTimer
public void setFileWatchTimer(int timeInMinutes)
- Specified by:
setFileWatchTimer
in interface DatastoreBase
runFileWatcher
public void runFileWatcher()
- Specified by:
runFileWatcher
in interface DatastoreBase
stopFileWatcher
public void stopFileWatcher()
getComparator
public java.lang.String getComparator()
- Specified by:
getComparator
in interface DatastoreBase
- Returns:
- Returns the comparator.
setComparator
public void setComparator(java.lang.String comparator)
- Specified by:
setComparator
in interface DatastoreBase
- Parameters:
comparator
- The comparator to set.
getSecureHash
public java.lang.String getSecureHash(java.lang.String data)
throws java.security.NoSuchAlgorithmException
- Specified by:
getSecureHash
in interface DatastoreBase
- Parameters:
data
- is a string to secure hash with SHA
- Returns:
- Returns a SHA hashed String
- Throws:
java.security.NoSuchAlgorithmException