### Question:
ThriftClientAddress implements Comparable<ThriftClientAddress> { public static ThriftClientAddress of(ParameterSource source) { return supplier(source).get(); } ThriftClientAddress(String host, int port);  ThriftClientAddress(String host, int port, Map<String, String> parameters); String getHost(); int getPort(); Map<String, String> getParameters(); String getDc(); String getClusterName(); Optional<ThriftTraceMode> getTraceMode(); String toShortString(); String toEscapedString(); @Override String toString(); @Override boolean equals(Object o); @Override int hashCode(); static ThriftClientAddress parse(String address); static ThriftClientAddress of(ParameterSource source); static Supplier<ThriftClientAddress> supplier(ParameterSource source); static List<ThriftClientAddress> parseList(String servers); @Override int compareTo(ThriftClientAddress o); static final int DEFAULT_SERVER_THRIFT_PORT; static final String DEFAULT_DC_NAME_CLIENT; static final String DEFAULT_DC_NAME_SERVER; static final String DEFAULT_CLUSTER_NAME; static final String DC_PARAMETER; static final String TRACE_TYPE_PARAMETER; static final String CLUSTER_NAME_PARAMETER; @Deprecated
    static final String VERSION_PARAMETER; }### Answer:
@Test(groups = "unit") public void of() throws Exception { Supplier<ThriftClientAddress> supplier = ThriftClientAddress.supplier((name, defVal) -> "address".equals(name) ? "test.osmp.ru:3131" : defVal); assertEquals(supplier.get().toString(), "test.osmp.ru:3131"); }