1 /* 2 * XNap - A P2P framework and client. 3 * 4 * See the file AUTHORS for copyright information. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 */ 19 20 package org.xnap.io; 21 22 import org.xnap.util.FileHelper; 23 24 public class MetaInfoManager { 25 26 // --- Constant(s) --- 27 28 // --- Data Field(s) --- 29 30 // --- Constructor(s) --- 31 32 private MetaInfoManager() 33 { 34 } 35 36 // --- Method(s) --- 37 38 public static boolean handle(MetaInfoFile file) 39 { 40 if (file.isUpToDate()) { 41 return true; 42 } 43 44 String ext = FileHelper.extension(file.getName()); 45 boolean handled = false; 46 synchronized (file) { 47 if (ext.equals("mp3")) { 48 handled |= MP3MetaInfo.handle(file); 49 } 50 else if (ext.equals("avi") || ext.equals("mpg") 51 || ext.equals("mpeg") || ext.equals("asf")) { 52 handled |= VideoMetaInfo.handle(file); 53 } 54 } 55 56 file.setLastUpdate(System.currentTimeMillis()); 57 return handled; 58 } 59 60 }