- Timestamp:
- Sep 1, 2010, 6:48:53 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/jiwigo/trunk/src/main/java/fr/mael/jiwigo/service/ImageService.java
r6821 r6831 5 5 import java.util.List; 6 6 7 import fr.mael.jiwigo.Main;8 7 import fr.mael.jiwigo.dao.ImageDao; 9 8 import fr.mael.jiwigo.om.Image; 10 9 import fr.mael.jiwigo.transverse.enumeration.PreferencesEnum; 11 10 import fr.mael.jiwigo.transverse.util.ImagesUtil; 12 import fr.mael.jiwigo.transverse.util. MetadataExtractor;11 import fr.mael.jiwigo.transverse.util.Outil; 13 12 import fr.mael.jiwigo.transverse.util.preferences.PreferencesManagement; 14 13 … … 67 66 } 68 67 68 /** 69 * Method called to send an image to the server. 70 71 * @param filePath 72 * @param idCategory 73 * @return 74 * @throws Exception 75 */ 69 76 public boolean creer(String filePath, Integer idCategory) throws Exception { 77 //get the byte array of the original file, to keep metadata 78 byte[] bytesFichierOriginal = Outil.getBytesFromFile(new File(filePath)); 79 80 //size taken from the user's preferences 70 81 int widthOriginale = Integer 71 82 .valueOf(PreferencesManagement.getValue(PreferencesEnum.WIDTH_ORIGINALE.getLabel())); 72 83 int heightOriginale = Integer.valueOf(PreferencesManagement 73 84 .getValue(PreferencesEnum.HEIGHT_ORIGINAL.getLabel())); 85 //resize the picture (or not) 74 86 boolean originaleRedimensionnee = ImagesUtil.scale(filePath, "originale.jpg", widthOriginale, heightOriginale); 87 //create the thumbnail 75 88 ImagesUtil.scale(filePath, "thumb.jpg", 120, 90); 89 //get the thumbnail 76 90 File thumbnail = new File(System.getProperty("java.io.tmpdir") + "/thumb.jpg"); 77 91 File originale = null; 78 92 if (originaleRedimensionnee) { 79 93 originale = new File(System.getProperty("java.io.tmpdir") + "/originale.jpg"); 94 //if the original file has been resized, we put the metadata in the resized file 95 //I use here a try catch because if the original file isn't a jpeg 96 //the methode Outil.enrich will fail, but the procedure has to continue 97 try { 98 byte[] fichierEnrichi = Outil.enrich(bytesFichierOriginal, Outil.getBytesFromFile(new File(System 99 .getProperty("java.io.tmpdir") 100 + "/originale.jpg"))); 101 Outil.byteToFile(System.getProperty("java.io.tmpdir") + "/originale.jpg", fichierEnrichi); 102 } catch (Exception e) { 103 } 80 104 } else { 81 105 originale = new File(filePath); 82 } 83 MetadataExtractor medataExtractor = new MetadataExtractor(originale.getAbsolutePath()); 84 String auteur = medataExtractor.getAuteur(); 85 if (auteur == null) { 86 auteur = Main.sessionManager.getLogin(); 106 87 107 } 88 108 Image image = new Image(); … … 90 110 image.setThumbnail(thumbnail); 91 111 image.setOriginale(originale); 92 image.setAuteur(auteur);93 112 image.setIdCategory(idCategory); 113 //now we call the dao to send the image to the webservice 94 114 return ImageDao.getInstance().creer(image); 95 115 } 96 116 117 /** 118 * Deletes the file extension 119 * @param path 120 * @return 121 */ 97 122 private String getImageName(String path) { 98 123 File fichier = new File(path);
Note: See TracChangeset
for help on using the changeset viewer.