Updating vcard handling.

git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@9212 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Derek DeMoro
2007-09-25 16:33:15 +00:00
committed by derek
parent a306213690
commit df307442b5
3 changed files with 32 additions and 8 deletions

View File

@ -26,6 +26,7 @@ import org.jivesoftware.spark.util.ModelUtil;
import org.jivesoftware.spark.util.log.Log;
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
import org.jivesoftware.sparkimpl.profile.VCardManager;
import javax.swing.Icon;
import javax.swing.ImageIcon;
@ -291,7 +292,7 @@ public class ContactItem extends JPanel {
}
}
return null;
return SparkManager.getVCardManager().getAvatarURL(getJID());
}
/**

View File

@ -11,17 +11,12 @@ package org.jivesoftware.sparkimpl.plugin.language;
import org.jivesoftware.resource.Res;
import org.jivesoftware.spark.SparkManager;
import org.jivesoftware.spark.plugin.Plugin;
import org.jivesoftware.spark.util.URLFileSystem;
import org.jivesoftware.spark.util.log.Log;
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JMenu;
import javax.swing.JOptionPane;
import java.awt.event.ActionEvent;
import java.io.File;
import java.net.URL;
import java.net.URLDecoder;
import java.util.Enumeration;
@ -29,7 +24,11 @@ import java.util.Locale;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
import java.util.zip.ZipFile;
import java.io.File;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JMenu;
import javax.swing.JOptionPane;
/**
* Allows for changing of default languages within Spark.
@ -51,6 +50,11 @@ public class LanguagePlugin implements Plugin {
// Load files
URL sparkJar = getClass().getClassLoader().getResource("spark.jar");
if (sparkJar == null) {
// Do not initialize
return;
}
String url = URLDecoder.decode(sparkJar.getPath());
try {

View File

@ -573,6 +573,25 @@ public class VCardManager {
this.personalVCard = vcard;
}
public URL getAvatarURL(String jid) {
VCard vcard = getVCard(jid, true);
if (vcard != null) {
String hash = vcard.getAvatarHash();
if(!ModelUtil.hasLength(hash)){
return null;
}
final File avatarFile = new File(contactsDir, hash);
try {
return avatarFile.toURL();
}
catch (MalformedURLException e) {
Log.error(e);
}
}
return null;
}
/**
* Persist vCard information out for caching.
*