View Javadoc

1   package org.varienaja.util.coverart;
2   
3   import java.util.LinkedList;
4   import java.util.List;
5   
6   import org.apache.log4j.Logger;
7   import org.varienaja.amazon.AmazonService;
8   
9   import com.amazon.webservices.AWSECommerceService.Image;
10  import com.amazon.webservices.AWSECommerceService.Item;
11  
12  /**
13   * @author Varienaja
14   */
15  public class AmazonCoverArtFinder implements ICoverArtFinder {
16  	private static final Logger log = Logger.getLogger(AmazonCoverArtFinder.class);
17  
18  	/*
19  	 * (non-Javadoc)
20  	 * @see org.varienaja.util.coverart.ICoverArtFinder#findCoverURLs(java.lang.String, java.lang.String)
21  	 */
22  	public List<CoverArtSearchResult> findCoverURLs(String band, String albumtitle) {
23  		log.debug("Processing Amazon-imagesearch response");
24  		List<CoverArtSearchResult> result = new LinkedList<CoverArtSearchResult>();
25  		AmazonService service = new AmazonService();
26  		try {
27  			for (Item item : service.searchImages(band,albumtitle)) {
28  				Image img = item.getLargeImage();
29  				if (img!=null) {
30  					String url = img.getURL();
31  					int height = img.getHeight().get_value().intValue();
32  					int width = img.getWidth().get_value().intValue();
33  					
34  					CoverArtSearchResult casr = new CoverArtSearchResult(url,width,height,0);
35  					log.debug("Image extracted: "+casr);
36  					result.add(casr);
37  				}
38  			}
39  		} catch (Exception e) {
40  			log.error("Error searching Amazon: "+e);
41  			e.printStackTrace();
42  		}
43  		
44  		return result;
45  	}
46  
47  }