use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.
the class JdbcUserLovedTracksDao method batchInsert.
private void batchInsert(String lastFmUsername, List<Track> lovedTracks) {
String sql = "insert into music.lovedtrack_import" + " (lastfm_user, artist_name, track_name) values (?,?,?)";
BatchSqlUpdate batchUpdate = new BatchSqlUpdate(jdbcTemplate.getDataSource(), sql);
batchUpdate.setBatchSize(1000);
batchUpdate.declareParameter(new SqlParameter("lastfm_user", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("artist_name", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("track_name", Types.VARCHAR));
for (Track track : lovedTracks) {
batchUpdate.update(new Object[] { lastFmUsername, track.getArtist().getName(), track.getName() });
}
batchUpdate.flush();
}
use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.
the class TrackRowMapper method mapRow.
@Override
public Track mapRow(ResultSet rs, int rowNum) throws SQLException {
Track track = new Track();
track.setId(rs.getInt(1));
track.setName(rs.getString(2));
return track;
}
use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.
the class TrackWithMetadataRowMapper method mapRow.
@Override
public Track mapRow(ResultSet rs, int rowNum) throws SQLException {
String trackName = rs.getString(1);
MetaData md = new MetaData();
md.setAlbum(rs.getString(2));
md.setArtist(rs.getString(3));
md.setAlbumArtist(rs.getString(4));
md.setComposer(rs.getString(5));
md.setTrackNr(rs.getShort(6));
md.setTrackNrs(rs.getShort(7));
md.setDiscNr(rs.getShort(8));
md.setDiscNrs(rs.getShort(9));
md.setYear(rs.getShort(10));
md.setHasLyrics(rs.getBoolean(11));
md.setBitrate(rs.getShort(12));
md.setVbr(rs.getBoolean(13));
md.setDuration(rs.getShort(14));
md.setMediaType(Mediatype.values()[rs.getShort(15)]);
md.setPath(rs.getString(16) + separatorChar + rs.getString(17));
md.setSize(rs.getInt(18));
md.setModified(rs.getTimestamp(19).getTime());
int trackId = rs.getInt(20);
md.setAlbumId(rs.getInt(21));
md.setArtistId(rs.getInt(22));
return new Track(trackId, trackName, md);
}
use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.
the class UserStarredTrackRowMapper method mapRow.
@Override
public UserStarredTrack mapRow(ResultSet rs, int rowNum) throws SQLException {
String username = rs.getString(1);
String sessionKey = rs.getString(2);
String artistName = rs.getString(3);
String trackName = rs.getString(4);
return new UserStarredTrack(new LastFmUser(username, sessionKey), new Track(artistName, trackName));
}
use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.
the class TrackSimilarityHandler method startElement.
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if (TAG_SIMILAR_TRACKS.equals(qName)) {
artistName = attributes.getValue(TAG_ARTIST);
trackName = attributes.getValue(TAG_TRACK);
sourceTrack = new Track(artistName, trackName);
} else if (TAG_TRACK.equals(qName)) {
scope = TRACK;
currentTrackRelation = new TrackRelation();
currentTrackRelation.setTarget(new Track());
} else if (TAG_ARTIST.equals(qName)) {
scope = ARTIST;
} else {
state = xmlToStateMap.get(qName);
if (state != null) {
characterData = new StringBuilder();
}
}
}
Aggregations