@Override public RandomList getRandomList( User user ) { List<MDOGenre> randomGenreList = daoGenre.getRandomGenre( user.getLogin(), 1 ); if ( randomGenreList != null && randomGenreList.size() > 0 ) { List<MDOAlbum> albumList = daoAlbum.getAll( user.getLogin(), randomGenreList.get( 0 ) ); RandomList rl = new RandomList( "RandomListName-Genre", "RandomListTitle-Genre" ); rl.addDetail( randomGenreList.get( 0 ).getName() ); for ( int i = 0; i < albumList.size() && i < MAX_ELEMENTS; i++ ) { for ( MDOSong mdoSong : albumList.get( i ).getSongs() ) { Song song = new Song( mdoSong, true, true ); rl.addSong( song ); } } long seed = System.nanoTime(); if ( rl.getSongs() != null ) { Collections.shuffle( rl.getSongs(), new Random( seed ) ); } return rl; } return null; }