Skip to content
# General changes

- Add Maven support
- Add JUnit support
  - Add a variety of testcases for each cipher and subclass polybius
- Move logger to library and add as submodule
- Add maven hierarchy
  - rename path Ciphers -> java/org/ciphers
- All ciphers now also have initialize methods for encrypt and decrypt respectfully
  - In order to split userio inputs for JUnit support on each cipher
- Fix issue where InformationFiles were not visible by neither the compiler nor the jar, resulting in printInformation() to be excluded
- Move InformationFiles to maven hierarchy 'resources'

# File changes

- Libraries:
  - Update lib/logger to latest artifact
  - Update lib/userio to latest artifact
  - Rename lib/basicUserIO -> lib/userio

Ciphers.Subclasses.Polybius:
- Fix issue where digits could not be part of 6x6 tables
- Rename polibius to have 6x6 in the name
- Add 5x5 table support
  - 5x5 table letter replacement (defaukt J->I) can be customized

Ciphers.Subclasses.Shift:
- refactor rename variables

Ciphers.Adfgvx:
- Replace private modifiers to protected for variables that are accessed by Junit tests
- Add feature that the keyword for the polybius square can not contain digits

Ciphers.Ciphers:
- Add initialize encrypt and decrypt method to interface
- Add OutOfMemoryError for setFileWriteMaterial
- Fix issue where InformationFiles were not visible by neither the compiler nor the jar, resulting in printInformation() to be excluded
- Add setKey() for ciphers to easily set keywords

Main:
- add try finally block to avoid printStackTrace when Ctrl<c> the program

Menu:
- Add path change of maven hierarchy
- Make list of unwanted classes to loop through and filter