SYMBOL INDEX (150 symbols across 10 files) FILE: src/main/java/com/bastiaanjansen/otp/HMACAlgorithm.java type HMACAlgorithm (line 7) | public enum HMACAlgorithm { method HMACAlgorithm (line 18) | HMACAlgorithm(String name) { method getHMACName (line 22) | public String getHMACName() { FILE: src/main/java/com/bastiaanjansen/otp/HOTPGenerator.java class HOTPGenerator (line 19) | public final class HOTPGenerator { method HOTPGenerator (line 32) | private HOTPGenerator(final Builder builder) { method fromURI (line 38) | public static HOTPGenerator fromURI(final URI uri) throws URISyntaxExc... method withDefaultValues (line 62) | public static HOTPGenerator withDefaultValues(final byte[] secret) { method getURI (line 66) | public URI getURI(final int counter, final String issuer) throws URISy... method getURI (line 70) | public URI getURI(final int counter, final String issuer, final String... method getPasswordLength (line 77) | public int getPasswordLength() { method getAlgorithm (line 81) | public HMACAlgorithm getAlgorithm() { method verify (line 85) | public boolean verify(final String code, final long counter) { method verify (line 89) | public boolean verify(final String code, final long counter, final int... method generate (line 100) | public String generate(final long counter) throws IllegalStateException { method getURI (line 118) | public URI getURI(final String type, final String issuer, final String... method decodeBase32 (line 135) | private byte[] decodeBase32(final byte[] value) { method longToBytes (line 140) | private byte[] longToBytes(final long value) { method generateHash (line 144) | private byte[] generateHash(final byte[] secret, final byte[] data) th... method getCodeFromHash (line 154) | private String getCodeFromHash(final byte[] hash) { class Builder (line 192) | public static final class Builder { method Builder (line 213) | public Builder(final byte[] secret) { method Builder (line 225) | public Builder(String secret) { method withPasswordLength (line 229) | public Builder withPasswordLength(final int passwordLength) { method withAlgorithm (line 237) | public Builder withAlgorithm(final HMACAlgorithm algorithm) { method build (line 242) | public HOTPGenerator build() { method passwordLengthIsValid (line 246) | private boolean passwordLengthIsValid(final int passwordLength) { FILE: src/main/java/com/bastiaanjansen/otp/SecretGenerator.java class SecretGenerator (line 12) | public class SecretGenerator { method SecretGenerator (line 14) | private SecretGenerator() {} method generate (line 29) | public static byte[] generate() { method generate (line 42) | public static byte[] generate(final int bits) { FILE: src/main/java/com/bastiaanjansen/otp/TOTPGenerator.java class TOTPGenerator (line 17) | public final class TOTPGenerator { method TOTPGenerator (line 28) | private TOTPGenerator(final Builder builder) { method fromURI (line 34) | public static TOTPGenerator fromURI(URI uri) throws URISyntaxException { method withDefaultValues (line 61) | public static TOTPGenerator withDefaultValues(final byte[] secret) { method now (line 65) | public String now() throws IllegalStateException { method now (line 70) | public String now(Clock clock) throws IllegalStateException { method at (line 75) | public String at(final Instant instant) throws IllegalStateException { method at (line 79) | public String at(final Date date) throws IllegalStateException { method at (line 84) | public String at(final LocalDate date) throws IllegalStateException { method at (line 89) | public String at(final long secondsPast1970) throws IllegalArgumentExc... method verify (line 97) | public boolean verify(final String code) { method verify (line 109) | public boolean verify(final String code, final int delayWindow) { method getURI (line 114) | public URI getURI(final String issuer) throws URISyntaxException { method getURI (line 118) | public URI getURI(final String issuer, final String account) throws UR... method durationUntilNextTimeWindow (line 130) | public Duration durationUntilNextTimeWindow() { method durationUntilNextTimeWindow (line 134) | public Duration durationUntilNextTimeWindow(Clock clock) { method getPeriod (line 139) | public Duration getPeriod() { method getClock (line 143) | public Clock getClock() { method getAlgorithm (line 147) | public HMACAlgorithm getAlgorithm() { method getPasswordLength (line 151) | public int getPasswordLength() { method calculateCounter (line 155) | private long calculateCounter(final long secondsPast1970, final Durati... method calculateCounter (line 159) | private long calculateCounter(final Clock clock, final Duration period) { method validateTime (line 163) | private boolean validateTime(final long time) { class Builder (line 167) | public static final class Builder { method Builder (line 185) | public Builder(byte[] secret) { method Builder (line 194) | public Builder(String secret) { method withHOTPGenerator (line 198) | public Builder withHOTPGenerator(Consumer bui... method withClock (line 203) | public Builder withClock(Clock clock) { method withPeriod (line 208) | public Builder withPeriod(Duration period) { method build (line 214) | public TOTPGenerator build() { FILE: src/main/java/com/bastiaanjansen/otp/helpers/URIHelper.java class URIHelper (line 18) | public class URIHelper { method URIHelper (line 27) | private URIHelper() {} method queryItems (line 35) | public static Map queryItems(URI uri) { method createURI (line 64) | public static URI createURI(String scheme, String host, String path, M... method encode (line 74) | public static String encode(String value) { FILE: src/test/java/com/bastiaanjansen/otp/ExampleApp.java class ExampleApp (line 6) | public class ExampleApp { method main (line 7) | public static void main(String[] args) { FILE: src/test/java/com/bastiaanjansen/otp/HOTPGeneratorTest.java class HOTPGeneratorTest (line 20) | class HOTPGeneratorTest { method testData (line 24) | private static Stream testData() { method generateWithCounter (line 41) | @ParameterizedTest method generateWithInvalidCounter_throwsIllegalArgumentException (line 52) | @ParameterizedTest method verifyCurrentCode_true (line 60) | @Test method verifyOlderCodeWithDelayWindowIs0_false (line 68) | @Test method verifyOlderCodeWithDelayWindowIs1_true (line 76) | @Test method withDefaultValues_algorithm (line 84) | @Test method withDefaultValues_passwordLength (line 92) | @Test method getURIWithIssuer_doesNotThrow (line 100) | @Test method getURIWithIssuerWithSpace_doesNotThrow (line 109) | @Test method getURIWithIssuerWithSpace_doesEscapeIssuer (line 116) | @Test method getURIWithIssuer (line 125) | @Test method getURIWithIssuerWithUrlUnsafeCharacters (line 133) | @Test method getURIWithIssuerAndAccount_doesNotThrow (line 142) | @Test method getURIWithIssuerAndAccount (line 151) | @Test method getURIWithIssuerAndAccountWithUrlUnsafeCharacters (line 159) | @Test method fromURIWithAlgorithmUppercase (line 168) | @Test method fromURIWithAlgorithmLowercase (line 178) | @Test method fromURIWithDigitsIs7 (line 187) | @Test method fromURIWithInvalidDigits_throwsURISyntaxException (line 196) | @Test method fromURIWithInvalidAlgorithm_throwsURISyntaxException (line 203) | @Test method fromURIWithInvalidSecret_throwsIllegalArgumentException (line 210) | @Test class BuilderTest (line 217) | @Nested method builderWithEmptySecret_throwsIllegalArgumentException (line 219) | @Test method builderWithPasswordLengthIs5_throwsIllegalArgumentException (line 224) | @Test method builderWithPasswordLengthIs9_throwsIllegalArgumentException (line 231) | @Test method builderWithPasswordLengthIs6 (line 238) | @Test method builderWithAlgorithmSHA1 (line 246) | @Test method builderWithAlgorithmSHA256 (line 254) | @Test method builderWithAlgorithmSHA512 (line 262) | @Test method builderWithInvalidPasswordLength_throwsIllegalArgumentException (line 270) | @ParameterizedTest method builderWithoutAlgorithm_defaultAlgorithm (line 276) | @Test FILE: src/test/java/com/bastiaanjansen/otp/SecretGeneratorTest.java class SecretGeneratorTest (line 9) | class SecretGeneratorTest { method generate_defaultLengthIs32 (line 11) | @Test method generate_lengthIs56 (line 17) | @Test method generateWithZeroBits_throwsIllegalArgument (line 23) | @Test method generateWithLessThanZeroBits_throwsIllegalArgument (line 28) | @Test FILE: src/test/java/com/bastiaanjansen/otp/TOTPGeneratorTest.java class TOTPGeneratorTest (line 25) | class TOTPGeneratorTest { method secondsPast1970TestData (line 29) | private static Stream secondsPast1970TestData() { method instantTestData (line 44) | private static Stream instantTestData() { method dateTestData (line 54) | private static Stream dateTestData() { method clockTestData (line 64) | private static Stream clockTestData() { method generateAtSecondsPast1970 (line 74) | @ParameterizedTest method generateAtInstant (line 85) | @ParameterizedTest method generateAtDate (line 96) | @ParameterizedTest method generateAtNow (line 107) | @ParameterizedTest method generateWithInvalidSecondsPast1970_throwsIllegalArgumentException (line 121) | @ParameterizedTest method verifyCurrentCode_true (line 130) | @Test method verifyOlderCodeWithDelayWindowIs0_false (line 138) | @Test method verifyOlderCodeWithDelayWindowIs1_true (line 146) | @Test method getURIWithIssuer (line 155) | @Test method getURIWithIssuerWithUrlUnsafeCharacters (line 163) | @Test method getURIWithIssuerAndAccount_doesNotThrow (line 171) | @Test method getURIWithIssuerAndAccount (line 180) | @Test method getURIWithIssuerAndAccountWithUrlUnsafeCharacters (line 189) | @Test method fromURIWithPeriod (line 198) | @Test method fromURIWithAlgorithmUppercase (line 208) | @Test method fromURIWithAlgorithmLowercase (line 218) | @Test method fromURIWithPasswordLength (line 228) | @Test method fromURIWithInvalidPeriod_throwsURISyntaxException (line 238) | @Test method fromURIWithPasswordLengthIs5_throwsURISyntaxException (line 245) | @Test method fromURIWithPasswordLengthIs9_throwsURISyntaxException (line 252) | @Test method fromURI_doesNotThrow (line 259) | @ParameterizedTest method fromURIWithInvalidAlgorithm_throwsURISyntaxException (line 273) | @Test class BuilderTest (line 280) | @Nested method builderWithEmptySecret_throwsIllegalArgumentException (line 282) | @Test method builderWithPasswordLengthIs5_throwsIllegalArgumentException (line 287) | @Test method builderWithPasswordLengthIs9_throwsIllegalArgumentException (line 294) | @Test method builderWithPasswordLengthIs6 (line 301) | @Test method builderWithAlgorithmSHA1 (line 309) | @Test method builderWithAlgorithmSHA256 (line 317) | @Test method builderWithAlgorithmSHA512 (line 325) | @Test method builderWithInvalidPasswordLength_throwsIllegalArgumentException (line 333) | @ParameterizedTest method builderWithoutPeriod_defaultPeriod (line 339) | @Test method builderWithoutAlgorithm_defaultAlgorithm (line 347) | @Test FILE: src/test/java/com/bastiaanjansen/otp/helpers/URIHelperTest.java class URIHelperTest (line 14) | class URIHelperTest { method queryItemsWithOneQueryItem (line 16) | @Test method queryItemsWithTwoQueryItems (line 25) | @Test method createURI_doesNotThrow (line 34) | @Test method createURIWithOneQueryItem (line 41) | @Test method createURIWithTwoQueryItems (line 51) | @Test method createURIWithUrlUnsafeCharacters (line 62) | @Test