SysLib is a command-line (CLI) library management software tailored for system librarians, especially those who are fast typists. It offers a wide range of features to manage library resources and events, from adding, editing, viewing, searching, deleting, to saving data file.
View the code I contributed here.
Enhancements:
Details:
1. Resource classes
Implementation: Book
, EBook
, CD
, Magazine
, EMagazine
, Newspaper
, ENewspaper
classes
Implemented the different resource classes for each resource has different attributes.
2. Add feature for resources
Implementation: AddCommand
, CreateResource
classes
Implemented the add feature to add resources into a list of all the resources in the library.
3. Parser for adding resources
Implementation: ParseResource
, ParseAttribute
, ParseBook
, ParseEBook
, ParseCD
, ParseMagazine
, ParseEMagazine
, ParseNewspaper
, ParseENewspaper
classes &
parseAddCommand()
, checkFirstItem()
in Parser
class
Implemented the validation and error handling of user input for the add feature. Checks the user input for all attributes in all resources. Returns error messages when invalid.
Validation checks for:
Limitations of input were reduced.
4. Exception class
Implementation: SysLibException
class
Catches exceptions related to SysLib and prevents program from exiting due to exceptions. Returns error messages to user so that the exception can be prevented with the right user input.
5. Output of messages
Implementation: Messages
class & formatSeparatorLineDivider()
in MessageFormatter
class
Messages strings are stored in Messages. It consists of mainly error, warning and assertion messages. formatSeparatorLineDivider() formats the messages neatly for output to user.
Sections contributed:
Sections contributed: