log.info("binding [" + value.getIndex() + ":" + value.getName() + "] to [" + value.getValue() + "]"); boundStatement.setString(value.getName(), (String) value.getValue()); else boundStatement.setString(value.getIndex() - 1, (String) value.getValue()); } else if (value.getValue() instanceof Integer) { if (value.isNamed()) boundStatement.setInt(value.getName(), (Integer) value.getValue()); else boundStatement.setInt(value.getIndex() - 1, (Integer) value.getValue()); } else if (value.getValue() instanceof Long) { if (value.isNamed()) boundStatement.setLong(value.getName(), (Long) value.getValue()); else boundStatement.setLong(value.getIndex() - 1, (Long) value.getValue()); } else if (value.getValue() instanceof java.util.UUID) { if (value.isNamed()) boundStatement.setUUID(value.getName(), (java.util.UUID) value.getValue()); else boundStatement.setUUID(value.getIndex() - 1, (java.util.UUID) value.getValue()); } else if (value.getValue() instanceof List) { if (value.isNamed()) boundStatement.setList(value.getName(), (List) value.getValue()); else boundStatement.setList(value.getIndex() - 1, (List) value.getValue()); } else { throw new IllegalArgumentException("bind parameter type [" + value.getValue().getClass() + "] is not supported, " + value.getIndex() + ":" + value.getName());