...
By extending Iterable, you will be able to do fun stuff like:
Panelnoformat |
---|
RecordHandler recSet = new ExampleRecordHandler(); for(Record rec : recSet){ log.trace("h4. h4. h4. h4. h4. h4. h2. "); ==============================================================="); log.trace("Record "+rec.getID()+":"); log.trace("---------------------------------------------------------------"); log.trace(rec.getData()); } |
Mutators
- public abstract addRecord(rec:Record, creator:Class<?>, overwrite:boolean) : void
- public addRecord(recID:String, recData:String, creator:Class<?>, overwrite:boolean) : void
- simply creates rec:Record using the params and calls addRecord(rec, creator, overwrite)
- public addRecord(rec:Record, creator:Class<?>) : void
- simply calls addRecord(rec, creator, isOverwriteDefault())
- public addRecord(recID:String, recData:String, creator:Class<?>) : void
- simply creates rec:Record using the params and calls addRecord(rec, creator, isOverwriteDefault())
- protected abstract addMetaData(rec:Record, rmd:RecordMetaData)
- protected addMetaData(rec:Record, operator:Class<?>, type:RecordMetaDataType) : void
- simply calls addMetaData(rec, new RecordMetaData(operator, type, RecordMetaData.makeMD5Hash(rec.getData())))
- protected setProcessed(rec:Record, operator:Class<?>) : void
- simply calls addMetaData(rec, operator, RecordMetaDataType.processed)
- protected setWritten(rec:Record, operator:Class<?>) : void
- simply calls addMetaData(rec, operator, RecordMetaDataType.written)
- protected abstract delMetaData(recID:String) : void
- public delRecord(recID:String) : void
- public abstract setParams(params:Map<String,String>) : void
- public setOverwriteDefault(overwrite:boolean) : void
Accessors - public abstract getRecordData(recID:String) : String
- public getRecord(recID:String) : Record
- simply returns a Record created using recID and getRecordData(recID)
- public abstract getRecordMetaData(recID:String) : SortedSet<RecordMetaData>
- protected getLastMetaData(recID:String, type:RecordMetaDataType) : RecordMetaData
- iterates through results of getRecordMetaData(recID) in descending order till it finds and returns a metadata of matching type
- public getLastMetaData(recID:String) : RecordMetaData
- simply returns getRecordMetaData(recID, null)
- public getLastWrittenMetaData(recID:String) : RecordMetaData
- simply returns getRecordMetaData(recID, RecordMetaDataType.written)
- public getLastProcessedMetaData(recID:String) : RecordMetaData
- simply returns getRecordMetaData(recID, RecordMetaDataType.processd)
- public isOverwriteDefault() : boolean
Utilities - public static parseConfig(filename:String) : RecordHandler
Map Record Handler
...
Stores records using Map<String,String> and metadata using Map<String,SortedSet<RecordMetaData>>
Constructors
- public constructor()
Mutators - public addRecord(rec:Record, creator:Class<?>, overwrite:boolean) : void
- public delRecord(recID:String) : void
- public setParams(params:Map<String,String>) : void
- unused as no params exist
- protected addMetaData(rec:Record, rmd:RecordMetaData) : void
- protected delMetaData(recID:String) : void
Accessors - public getRecordData(recID:String) : String
- public getRecordMetaData(recID:String) : SortedSet<RecordMetaData>
Utilities - public iterator() : Iterator<Record>
Text File Record Handler
...
public class TextFileRecordHandler implements RecordHandler
Stores each record in location fileDir (resolved using apache commons vfs) with filename recID filled with recData. Allows for access to files located in (S)FTP, Local File System, HTTP(S), Temporary Files, Archive Files (Zip, Jar, Tartgz/tbz2, gzip, bzip2), res, ram, mime. Meta data for each record is stored in subdirectory fileDir/.metadata in individual files.
...
- protected constructor()
- called by RecordHandler config parser... actually initialized by setParams(params)
- public constructor(fileDir:String)
MutatorsPanel new TextFileRecordHandler("XMLVault");
new TextFileRecordHandler("No Format ftp://username:password@127.0.0.1:21/path/to/dir
");
- public addRecord(rec:Record, operator:Class<?>, overwrite:boolean) : void
- public delRecord(recID:String) : void
- public setParams(params:Map<String,String>) : void
- protected addMetaData(rec:Record, rmd:RecordMetaData) : void
- protected delMetaData(recID:String) : void
Accessors - public getRecordData(recID:String) : string
- public getRecordMetaData(recID:String) : SortedSet<RecordMetaData>
Utilities - public iterator() : Iterator<Record>
JDBC Record Handler
...
class JDBCRecordHandler implements RecordHandler
Records are stored in a single, 3 column table:
...
- protected constructor()
- called by RecordHandler config parser... actually initialized by setParams(params)
- public constructor(jdbcDriverClass:String, connLine:String, username:String, password:String, tableName:String, dataFieldName:String)
Panel connLine strings have the following format: "jdbc:%connType%://%host%:%port%/%dbName%"
new JDBCRecordHandler("com.mysql.jdbc.Driver", "jdbc:mysql://127.0.0.1:3306/dbName", "username", "password", "tableName", "dataFieldName"); - public constructor(jdbcDriverClass:String, connType:String, host:String, port:String, dbName:String, username:String, password:String, tableName:String, dataFieldName:String)
MutatorsPanel builds a connLine from the connType, host, port, and dbName and calls the constructor that takes a connLine
new JDBCRecordHandler("com.mysql.jdbc.Driver", "mysql", "127.0.0.1", "3306", "dbName", "username", "password", "tableName", "dataFieldName"); - public addRecord(rec:Record, operator:Class<?>, overwrite:boolean) : void
- public delRecord(recID:String) : void
- public setParams(params:Map<String,String>) : void
- protected addMetaData(rec:Record, rmd:RecordMetaData) : void
- protected delMetaData(recID:String) : void
Accessors - public getRecordData(recID:String) : string
- public getRecordMetaData(recID:String) : SortedSet<RecordMetaData>
Utilities - protected finalize() : void
- called upon desctruction... closes db connection
- public iterator() : Iterator<Record>
Jena Record Handler
...
public class JenaRecordHandler implements RecordHandler
Each record is stored as 3 triples:
...
- protected constructor()
- called by RecordHandler config parser... actually initialized by setParams(params)
- public constructor(jdbcDriverClass:String, connType:String, host:String, port:String, dbName:String, username:String, password:String, dbType:String, modelName:String, dataFieldType:String)
Panel new JenaRecordHandler("com.mysql.jdbc.Driver", "mysql", "127.0.0.1", "3306", "dbName", "username", "password", "MySQL", "modelName", "
No Format http://localhost/demo#data
");
- public constructor(jdbcDriverClass:String, connType:String, host:String, port:String, dbName:String, username:String, password:String, dbType:String, dataFieldType:String)
Panel new JenaRecordHandler("com.mysql.jdbc.Driver", "mysql", "127.0.0.1", "3306", "dbName", "username", "password", "MySQL", "
No Format http://localhost/demo#data
");
- public constructor(configFile:String, dataFieldType:String)
MutatorsPanel new JenaRecordHandler("JenaModelConfigFile.xml", "
No Format http://localhost/demo#data
");
- public addRecord(rec:Record, operator:Class<?>, overwrite:boolean) : void
- public delRecord(recID:String) : void
- public setParams(params:Map<String,String>) : void
- protected addMetaData(rec:Record, rmd:RecordMetaData) : void
- protected delMetaData(recID:String) : void
Accessors - public getRecordData(recID:String) : string
- public getRecordMetaData(recID:String) : SortedSet<RecordMetaData>
Utilities - public iterator() : Iterator<Record>