Adding methods to BatchMetadataInjection... this commit probably won't be functional
Won't compile. Added samples and iuses to BatchMetadataInjection. Committing so that I can merge from develop.
Merge branch 'develop' into feature/BatchInjectTakeTwo
Corrected a missing field parameter in Metadata for IUSes (it wasn't checking for barcodes). Added functionality for adding annotations in the BatchMetadataInjection class
Modified MetadataWS so that the new methods don't err out when an object is not found. Also when annotating samples and lanes, retrieve the attributes when adding them
Added a printout statement to Metadata plugin to debug
Added annotations to Lane and Sample and added checks for nulls. Still not fully debugged
Merge branch 'develop' into feature/BatchInjectTakeTwo
Fixed a bug with adding samples wihtout interactive feedback; formatted the interactive mode so that things are easier to read; removed extraneous print statements
Lots of changes, and hopefully it works now! Added features to facilitate adding similar samples; removed extraneous println statements; created a feature to print out the dot diagram to the command line
Correct null pointer exception when no sequencer runs exist
Fixed problem with newlines in digraph
Added promptString, promptInteger, and promptBoolean to ConsoleAdapter
Not tested yet, but made the parsing code for BatchMetadataInjection BEAUTIFUL. Now it fully parses the file and prompts for values before they are created in the DB. Separated out the *Info classes from BMI to make it easier to read. BMI is now totally generic and new parsers can be added. Created a factory-like structure in BatchMetadataParser that new parsers can be built from that enforces the standard naming conventions. Can now annotate every table. Changed the calls to promptString, promptInteger, promptBoolean to use the ConsoleAdapter class. Still need to write tests
Modified the toString methods so they print in a more user-friendly manner
Added a new LowLevel method called getObject that does not catch any exceptions. Added a new method called existsObject that calls getOBject and handles those exceptions. Changed findObject method to call getObject and handle exceptions accordingly. Changed the new methods added for BatchMetadataInjection so that they use existsObject method. Changed some error messages.
extended the internal hashmap so it does not accept null values
Bug fixing. Re-ordered some steps. Migrated more code out of BatchMetadataInjection
Added the option to define fields on the command line rather than specifying them at runtime
Added file_path when adding new SequencerRuns; added the interactive option into BatchMetadataInjection. Untested.