From b679139f6656ef276943734e3c0baab618394ef1 Mon Sep 17 00:00:00 2001 From: Matthew Ellison Date: Thu, 27 Jan 2022 15:34:34 +0000 Subject: [PATCH] PolybiusSquare.java edited online with Bitbucket --- .../polySubstitution/PolybiusSquare.java | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/mattrixwv/CipherStreamJava/polySubstitution/PolybiusSquare.java b/src/main/java/com/mattrixwv/CipherStreamJava/polySubstitution/PolybiusSquare.java index 74fc807..ca45d11 100644 --- a/src/main/java/com/mattrixwv/CipherStreamJava/polySubstitution/PolybiusSquare.java +++ b/src/main/java/com/mattrixwv/CipherStreamJava/polySubstitution/PolybiusSquare.java @@ -13,7 +13,7 @@ import com.mattrixwv.CipherStreamJava.exceptions.InvalidInputException; public class PolybiusSquare{ //A class representing the location of a character in the grid - private class CharLocation{ + protected class CharLocation{ private int x; private int y; public CharLocation(int x, int y){ @@ -29,17 +29,17 @@ public class PolybiusSquare{ } //Variables - private String inputString; //The message that needs to be encoded/decoded - private String outputString; //The encoded/decoded message - private String keyword; //The keyword used to create the grid - private char[][] grid; //The grid used to encode/decode the message - private char replaced; //The letter that will need to be replaced in the grid and any input string or keyword - private char replacer; //The letter that replaces replaced in the input string or keyword - private boolean preserveWhitespace; //Whether to respect whitespace in the output string - private boolean preserveSymbols; //Whether to respect symbols in the output string + protected String inputString; //The message that needs to be encoded/decoded + protected String outputString; //The encoded/decoded message + protected String keyword; //The keyword used to create the grid + protected char[][] grid; //The grid used to encode/decode the message + protected char replaced; //The letter that will need to be replaced in the grid and any input string or keyword + protected char replacer; //The letter that replaces replaced in the input string or keyword + protected boolean preserveWhitespace; //Whether to respect whitespace in the output string + protected boolean preserveSymbols; //Whether to respect symbols in the output string //Create the grid from the keyword - public void createGrid(){ + protected void createGrid(){ for(int row = 0;row < 5;++row){ for(int col = 0;col < 5;++col){ char letter = keyword.charAt((5 * row) + col); @@ -48,7 +48,7 @@ public class PolybiusSquare{ } } //Strips invalid characters from the string that needs encoded/decoded - public void setInputStringEncoding(String inputString) throws InvalidCharacterException, InvalidInputException{ + protected void setInputStringEncoding(String inputString) throws InvalidCharacterException, InvalidInputException{ if(inputString == null){ throw new NullPointerException("Input cannot be null"); } @@ -92,7 +92,7 @@ public class PolybiusSquare{ throw new InvalidInputException("Input must contain at least 1 letter"); } } - public void setInputStringDecoding(String inputString) throws InvalidCharacterException, InvalidInputException{ + protected void setInputStringDecoding(String inputString) throws InvalidCharacterException, InvalidInputException{ if(inputString == null){ throw new NullPointerException("Input cannot be null"); } @@ -129,17 +129,17 @@ public class PolybiusSquare{ } } //Returns the input string ready for encoding - public String getPreparedInputStringEncoding(){ + protected String getPreparedInputStringEncoding(){ String cleanString = inputString.toUpperCase(); cleanString = cleanString.replaceAll("[^A-Z]", ""); return cleanString; } - public String getPreparedInputStringDecoding(){ + protected String getPreparedInputStringDecoding(){ String cleanString = inputString.replaceAll("[^0-9]", ""); return cleanString; } //Strips invalid characters from the keyword and creates the grid - public void setKeyword(String keyword){ + protected void setKeyword(String keyword){ if(keyword == null){ throw new NullPointerException("Keyword cannot be null"); } @@ -164,7 +164,7 @@ public class PolybiusSquare{ createGrid(); } //Returns the location of the given charcter in the grid - public CharLocation findChar(char letter) throws InvalidInputException{ + protected CharLocation findChar(char letter) throws InvalidInputException{ for(int row = 0;row < grid.length;++row){ for(int col = 0;col < grid[row].length;++col){ if(grid[row][col] == letter){ @@ -176,7 +176,7 @@ public class PolybiusSquare{ throw new InvalidInputException("The character '" + letter + "' was not found in the grid"); } //Adds characters that aren't letters to the output - public void addCharactersToCleanStringEncode(String cleanString){ + protected void addCharactersToCleanStringEncode(String cleanString){ int outputCnt = 0; StringBuilder fullOutput = new StringBuilder(); for(int inputCnt = 0;inputCnt < inputString.length();++inputCnt){ @@ -192,7 +192,7 @@ public class PolybiusSquare{ } outputString = fullOutput.toString(); } - public void addCharactersToCleanStringDecode(String cleanString){ + protected void addCharactersToCleanStringDecode(String cleanString){ int outputCnt = 0; StringBuilder fullOutput = new StringBuilder(); for(int inputCnt = 0;inputCnt < inputString.length();++inputCnt){