@Override public String toString() { return Joiner.on(":").useForNull("null").join(connectorId, schemaTableName, catalogName, schemaName, tableName); } }
@Override String reportItem(Item<?> item) { List<Object> factoryArgs = argGroups.get(item.groupNumber).get(item.itemNumber); return factory.getName() + "(" + Joiner.on(", ").useForNull("null").join(factoryArgs) + ")"; } });
/** * Returns a map joiner with the same behavior as this one, except automatically substituting * {@code nullText} for any provided null keys or values. */ public MapJoiner useForNull(String nullText) { return new MapJoiner(joiner.useForNull(nullText), keyValueSeparator); } }
@Override protected String createInsertStatementStr(String databaseName, String table) { return String.format(INSERT_STATEMENT_PREFIX_FORMAT, databaseName, table, JOINER_ON_COMMA.join(columnNames), JOINER_ON_COMMA.useForNull("?").join(new String[columnNames.size()])); }
/** * Returns a map joiner with the same behavior as this one, except automatically substituting * {@code nullText} for any provided null keys or values. */ public MapJoiner useForNull(String nullText) { return new MapJoiner(joiner.useForNull(nullText), keyValueSeparator); } }
@Override protected String createPrepareStatementStr(int batchSize) { final String VALUE_FORMAT = "(%s)"; StringBuilder sb = new StringBuilder(this.insertStmtPrefix); String values = String.format(VALUE_FORMAT, JOINER_ON_COMMA.useForNull("?").join(new String[this.columnNames.size()])); sb.append(values); return sb.append(';').toString(); }
@Override protected String createPrepareStatementStr(int batchSize) { final String VALUE_FORMAT = "(%s)"; StringBuilder sb = new StringBuilder(this.insertStmtPrefix); String values = String.format(VALUE_FORMAT, JOINER_ON_COMMA.useForNull("?").join(new String[this.columnNames.size()])); sb.append(values); for (int i = 1; i < batchSize; i++) { sb.append(',').append(values); } return sb.append(';').toString(); }
@Override protected String createPrepareStatementStr(int batchSize) { final String VALUE_FORMAT = "(%s)"; StringBuilder sb = new StringBuilder(this.insertStmtPrefix); String values = String.format(VALUE_FORMAT, JOINER_ON_COMMA.useForNull("?").join(new String[this.columnNames.size()])); sb.append(values); for (int i = 1; i < batchSize; i++) { sb.append(',').append(values); } return sb.append(';').toString(); }
public void test_useForNull_twice() { Joiner j = Joiner.on("x").useForNull("y"); try { j = j.useForNull("y"); fail(); } catch (UnsupportedOperationException expected) { } }
/** * Returns a map joiner with the same behavior as this one, except automatically substituting * {@code nullText} for any provided null keys or values. */ public MapJoiner useForNull(String nullText) { return new MapJoiner(joiner.useForNull(nullText), keyValueSeparator); } }
public void test_skipNulls_useForNull() { Joiner j = Joiner.on("x").skipNulls(); try { j = j.useForNull("y"); fail(); } catch (UnsupportedOperationException expected) { } }
public void test_useForNull_skipNulls() { Joiner j = Joiner.on("x").useForNull("y"); try { j = j.skipNulls(); fail(); } catch (UnsupportedOperationException expected) { } }
@GwtIncompatible // NullPointerTester public void testNullPointers() { NullPointerTester tester = new NullPointerTester(); tester.testAllPublicStaticMethods(Joiner.class); tester.testInstanceMethods(Joiner.on(","), NullPointerTester.Visibility.PACKAGE); tester.testInstanceMethods(Joiner.on(",").skipNulls(), NullPointerTester.Visibility.PACKAGE); tester.testInstanceMethods( Joiner.on(",").useForNull("x"), NullPointerTester.Visibility.PACKAGE); tester.testInstanceMethods( Joiner.on(",").withKeyValueSeparator("="), NullPointerTester.Visibility.PACKAGE); } }
private static List<String> getParameterNames(Object[] parameters) { List<String> result = new ArrayList<>(parameters.length); for (Object parameter : parameters) { if (parameter == null) { result.add("null"); } else { if (parameter instanceof Object[]) { result.add("[" + Joiner.on(",").useForNull("null").join((Object[]) parameter) + "]"); } else { result.add(parameter.toString()); } } } return result; }
@GwtIncompatible // StringBuilder.append in GWT invokes Object.toString(), unlike the JRE version. public void testDontConvertCharSequenceToString() { assertEquals("foo,foo", Joiner.on(",").join(new DontStringMeBro(), new DontStringMeBro())); assertEquals( "foo,bar,foo", Joiner.on(",").useForNull("bar").join(new DontStringMeBro(), null, new DontStringMeBro())); }
String outputColProjection = Joiner.on(",").useForNull("null").join(this.columnList); outputColProjection = outputColProjection.replace(derivedWatermarkColumnName, Utils.getCoalesceColumnNames(watermarkColumn) + " AS " + derivedWatermarkColumnName);
private static String getName(ITestResult result) { String testName = result.getName(); String methodName = result.getMethod().getConstructorOrMethod().getName(); String name; if (testName.contains(methodName)) { name = methodName; } else { name = testName + "#" + methodName; } if (result.getParameters().length != 0) { name = name + "(" + Joiner.on(",").useForNull("null").join(getParameterNames(result.getParameters())) + ")"; } return name; }
public void testUseForNull() { Joiner zeroForNull = J.useForNull("0"); checkNoOutput(zeroForNull, ITERABLE_); checkResult(zeroForNull, ITERABLE_1, "1"); checkResult(zeroForNull, ITERABLE_12, "1-2"); checkResult(zeroForNull, ITERABLE_123, "1-2-3"); checkResult(zeroForNull, ITERABLE_NULL, "0"); checkResult(zeroForNull, ITERABLE_NULL_NULL, "0-0"); checkResult(zeroForNull, ITERABLE_NULL_1, "0-1"); checkResult(zeroForNull, ITERABLE_1_NULL, "1-0"); checkResult(zeroForNull, ITERABLE_1_NULL_2, "1-0-2"); checkResult(zeroForNull, ITERABLE_FOUR_NULLS, "0-0-0-0"); }
private static <T> String buildStringFromList(List<T> list) { return Joiner.on(", ").useForNull("null").join(list); }
/** * Write the list of to-import columns to a job configuration. * * @param conf configuration to be written to * @param columnInfoList list of ColumnInfo objects to be configured for import */ @VisibleForTesting static void configureColumnInfoList(Configuration conf, List<ColumnInfo> columnInfoList) { conf.set(COLUMN_INFO_CONFKEY, Joiner.on("|").useForNull("").join(columnInfoList)); }