@Override
protected RowMapper<ImageTransfer> createEntityRowMapper() {
return (rs, rowNum) -> {
ImageTransfer entity = new ImageTransfer();
entity.setId(getGuidDefaultEmpty(rs, "command_id"));
entity.setCommandType(ActionType.forValue(rs.getInt("command_type")));
entity.setPhase(ImageTransferPhase.forValue(rs.getInt("phase")));
entity.setType(TransferType.forValue(rs.getInt("type")));
entity.setActive(rs.getBoolean("active"));
entity.setLastUpdated(new Date(rs.getTimestamp("last_updated").getTime()));
entity.setMessage(rs.getString("message"));
entity.setVdsId(getGuid(rs, "vds_id"));
entity.setDiskId(getGuid(rs, "disk_id"));
entity.setImagedTicketId(getGuid(rs, "imaged_ticket_id"));
entity.setProxyUri(rs.getString("proxy_uri"));
entity.setDaemonUri(rs.getString("daemon_uri"));
entity.setSignedTicket(rs.getString("signed_ticket"));
entity.setBytesSent(rs.getLong("bytes_sent"));
entity.setBytesTotal(rs.getLong("bytes_total"));
entity.setClientInactivityTimeout((Integer) rs.getObject("client_inactivity_timeout"));
return entity;
};
}