public static <T> NestedKeyValue<T> getNestedKeyValue(Map<?,?> m, Object... keys) { return _getNestedKeyValue(m, null, null, keys); }
public static Enum<?> enumFrom(Class<?> enumClass, int oridinal) { return enumValues(enumClass)[oridinal]; } public static Enum<?> enumFrom(Class<?> enumClass, String name) {
protected void logSql(String sql, Object[] objects) { if (log.isDebugEnabled()) { log.debug("sql: {}; values: {}", sql, ObjectMapUtils.toStringList(new StringBuilder(), asList(objects), 100)); } }
public static Enum<?>[] enumValues(Class<?> enumClass) { try { return _enumValues(enumClass); } catch (Exception e) { throw new JirmIllegalArgumentException("Cannot dynamically resolve enum values for:" + enumClass, e); } }
public Map<String, Object> mapRow( SqlObjectDefinition<?> definition, ResultSet rs, int rowNum) throws SQLException { ResultSetMetaData rsmd = rs.getMetaData(); int columnCount = rsmd.getColumnCount(); Map<String, Object> mapOfColValues = createColumnMap(columnCount); for (int i = 1; i <= columnCount; i++) { String columnName; if ( (columnName = rsmd.getColumnLabel(i)) != null && columnName.contains(".")) { Object value = getColumnValue(definition, rs, i); List<String> names = Lists.newArrayList(splitter.split(columnName)); ObjectMapUtils.pushPath(mapOfColValues, names, value); } //else if ( (columnName = rsmd.getColumnName(i)) != null && columnName.contains(".")) { //TODO make this work. //} else { String key = getColumnKey(definition, rsmd, i); Object obj = getColumnValue(definition, rs, i); mapOfColValues.put(key, obj); } } return mapOfColValues; }
SqlParameterDefinition idDef = pd.getObjectDefinition().get().getObjectDefintion().idParameter().get(); NestedKeyValue<Object> nkv = ObjectMapUtils.getNestedKeyValue(m, pd.getParameterName(), idDef.getParameterName()); if (nkv.isPresent()) {
public static Enum<?> enumFrom(Class<?> enumClass, String name) { Enum<?>[] enums = enumValues(enumClass); for (Enum<?> e : enums) { if (e.name().equals(name)) { return e; } } throw check.argumentInvalid("name: {} is not valid for: {}", name, enumClass); }