static void validateNotKeyWord(String label, String message) { if (Metadata.isReservedCqlKeyword(label)) { throw new IllegalArgumentException(message); } }
/** * We don't need to escape an identifier if it matches non-quoted CQL3 ids ([a-z][a-z0-9_]*), and * if it's not a CQL reserved keyword. */ private static boolean needsQuote(String s) { // this method should only be called for C*-provided identifiers, // so we expect it to be non-null and non-empty. assert s != null && !s.isEmpty(); char c = s.charAt(0); if (!(c >= 97 && c <= 122)) // a-z return true; for (int i = 1; i < s.length(); i++) { c = s.charAt(i); if (!((c >= 48 && c <= 57) // 0-9 || (c == 95) // _ || (c >= 97 && c <= 122) // a-z )) { return true; } } return isReservedCqlKeyword(s); }
@Test(groups = "unit") public void should_detect_reserved_keywords_in_upper_case() { assertThat(Metadata.isReservedCqlKeyword("COLUMNFAMILY")).isTrue(); assertThat(Metadata.isReservedCqlKeyword("TEST_COLUMNFAMILY")).isFalse(); }
@Test(groups = "unit") public void should_detect_reserved_keywords_in_mixed_case() { assertThat(Metadata.isReservedCqlKeyword("ColumnFamily")).isTrue(); assertThat(Metadata.isReservedCqlKeyword("Test_ColumnFamily")).isFalse(); } }
@Test(groups = "unit") public void should_detect_reserved_keywords_in_lower_case() { assertThat(Metadata.isReservedCqlKeyword("columnfamily")).isTrue(); assertThat(Metadata.isReservedCqlKeyword("test_columnfamily")).isFalse(); }
static void validateNotKeyWord(String label, String message) { if (Metadata.isReservedCqlKeyword(label)) { throw new IllegalArgumentException(message); } }
static void validateNotKeyWord(String label, String message) { if (Metadata.isReservedCqlKeyword(label)) { throw new IllegalArgumentException(message); } }
static void validateNotKeyWord(String label, String message) { if (Metadata.isReservedCqlKeyword(label)) { throw new IllegalArgumentException(message); } }
static String escapeId(String ident) { // we don't need to escape if it's lowercase and match non-quoted CQL3 ids, // and if it's not a CQL reserved keyword return lowercaseAlphanumeric.matcher(ident).matches() && !isReservedCqlKeyword(ident) ? ident : quote(ident); }
static String escapeId(String ident) { // we don't need to escape if it's lowercase and match non-quoted CQL3 ids, // and if it's not a CQL reserved keyword return lowercaseAlphanumeric.matcher(ident).matches() && !isReservedCqlKeyword(ident) ? ident : quote(ident); }
/** * We don't need to escape an identifier if it * matches non-quoted CQL3 ids ([a-z][a-z0-9_]*), * and if it's not a CQL reserved keyword. */ private static boolean needsQuote(String s) { // this method should only be called for C*-provided identifiers, // so we expect it to be non-null and non-empty. assert s != null && !s.isEmpty(); char c = s.charAt(0); if (!(c >= 97 && c <= 122)) // a-z return true; for (int i = 1; i < s.length(); i++) { c = s.charAt(i); if (!( (c >= 48 && c <= 57) // 0-9 || (c == 95) // _ || (c >= 97 && c <= 122) // a-z )) { return true; } } return isReservedCqlKeyword(s); }
@Test(groups = "unit") public void should_detect_reserved_keywords_in_lower_case() { assertThat(Metadata.isReservedCqlKeyword("columnfamily")).isTrue(); assertThat(Metadata.isReservedCqlKeyword("test_columnfamily")).isFalse(); }
@Test(groups = "unit") public void should_detect_reserved_keywords_in_upper_case() { assertThat(Metadata.isReservedCqlKeyword("COLUMNFAMILY")).isTrue(); assertThat(Metadata.isReservedCqlKeyword("TEST_COLUMNFAMILY")).isFalse(); }
@Test(groups = "unit") public void should_detect_reserved_keywords_in_mixed_case() { assertThat(Metadata.isReservedCqlKeyword("ColumnFamily")).isTrue(); assertThat(Metadata.isReservedCqlKeyword("Test_ColumnFamily")).isFalse(); } }