Resolved duplicate import of json library.

Fixed smiley source dependency to ui implementation.
Fixed ReplacementService bundled in each implementation.
cusax-fix
Yana Stamcheva 15 years ago
parent 65cdfb0240
commit 641158db88

@ -922,15 +922,15 @@
bundle-dict,bundle-plugin-dictaccregwizz,
bundle-plugin-simpleaccreg,bundle-plugin-generalconfig,
bundle-plugin-googletalkaccregwizz,bundle-argdelegation-service,
bundle-argdelegation,bundle-zrtp4j,
bundle-argdelegation,bundle-zrtp4j,bundle-json,
bundle-filehistory,bundle-metahistory,bundle-metahistory-slick,
bundle-plugin-facebookaccregwizz,
bundle-bouncycastle,bundle-plugin-otr,bundle-plugin-iptelaccregwizz,
bundle-contactsource,bundle-plugin-reconnect,bundle-plugin-securityconfig,
bundle-plugin-advancedconfig,bundle-plugin-sip2sipaccregwizz,
bundle-credentialsstorage,bundle-credentialsstorage-slick,
bundle-youtube,bundle-dailymotion,bundle-smiley,bundle-vimeo,
bundle-vbox7,bundle-metacafe,bundle-flickr,bundle-hulu,
bundle-replacement,bundle-youtube,bundle-dailymotion,bundle-smiley,
bundle-vimeo,bundle-vbox7,bundle-metacafe,bundle-flickr,bundle-hulu,
bundle-twitpic,bundle-directimage,bundle-bliptv,bundle-viddler,
bundle-plugin-chatconfig"/>
@ -1619,7 +1619,6 @@ javax.swing.event, javax.swing.border"/>
manifest="${src}/net/java/sip/communicator/plugin/sip2sipaccregwizz/sip2sipaccregwizz.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/plugin/sip2sipaccregwizz"
prefix="net/java/sip/communicator/plugin/sip2sipaccregwizz"/>
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
</jar>
</target>
@ -2256,6 +2255,21 @@ org.apache.http.util"/>
</jar>
</target>
<!--BUNDLE-JSON -->
<target name="bundle-json">
<jar compress="true" destfile="${bundles.dest}/json.jar"
filesetmanifest="merge">
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
<manifest>
<attribute name="Export-Package" value="org.json"/>
<attribute name="Bundle-Name" value="Json"/>
<attribute name="Bundle-Description" value="Json library."/>
<attribute name="System-Bundle" value="yes"/>
</manifest>
</jar>
</target>
<!--BUNDLE-FILEHISTORY-->
<target name="bundle-filehistory">
<jar compress="false" destfile="${bundles.dest}/filehistory.jar"
@ -2367,15 +2381,22 @@ org.apache.http.util"/>
</jar>
</target>
<!-- BUNDLE-REPLACEMENT -->
<target name="bundle-replacement">
<!-- Creates a bundle containing the replacement service.-->
<jar compress="false" destfile="${bundles.dest}/replacement.jar"
manifest="${src}/net/java/sip/communicator/service/replacement/replacement.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>
<!-- BUNDLE-YOUTUBE -->
<target name="bundle-youtube">
<jar compress="false" destfile="${bundles.dest}/replacement-youtube.jar"
manifest="${src}/net/java/sip/communicator/impl/replacement/youtube/youtube.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/youtube"
prefix="net/java/sip/communicator/impl/replacement/youtube"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
</jar>
</target>
@ -2385,8 +2406,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/dailymotion/dailymotion.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/dailymotion"
prefix="net/java/sip/communicator/impl/replacement/dailymotion"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>
@ -2396,12 +2415,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/smiley/smiley.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/smiley"
prefix="net/java/sip/communicator/impl/replacement/smiley"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
<zipfileset dir="${dest}/net/java/sip/communicator/impl/gui/utils"
prefix="net/java/sip/communicator/impl/gui/utils"/>
<zipfileset dir="${dest}/net/java/sip/communicator/impl/gui"
prefix="net/java/sip/communicator/impl/gui"/>
</jar>
</target>
@ -2411,9 +2424,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/vimeo/vimeo.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/vimeo"
prefix="net/java/sip/communicator/impl/replacement/vimeo"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
</jar>
</target>
@ -2423,8 +2433,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/vbox7/vbox7.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/vbox7"
prefix="net/java/sip/communicator/impl/replacement/vbox7"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>
@ -2434,8 +2442,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/metacafe/metacafe.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/metacafe"
prefix="net/java/sip/communicator/impl/replacement/metacafe"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>
@ -2445,9 +2451,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/flickr/flickr.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/flickr"
prefix="net/java/sip/communicator/impl/replacement/flickr"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
</jar>
</target>
@ -2457,9 +2460,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/hulu/hulu.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/hulu"
prefix="net/java/sip/communicator/impl/replacement/hulu"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
</jar>
</target>
@ -2469,8 +2469,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/twitpic/twitpic.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/twitpic"
prefix="net/java/sip/communicator/impl/replacement/twitpic"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>
@ -2480,8 +2478,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/directimage/directimage.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/directimage"
prefix="net/java/sip/communicator/impl/replacement/directimage"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>
@ -2491,9 +2487,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/bliptv/bliptv.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/bliptv"
prefix="net/java/sip/communicator/impl/replacement/bliptv"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
<zipfileset src="${lib.noinst}/json-20090723.jar" prefix=""/>
</jar>
</target>
@ -2503,8 +2496,6 @@ org.apache.http.util"/>
manifest="${src}/net/java/sip/communicator/impl/replacement/viddler/viddler.source.manifest.mf">
<zipfileset dir="${dest}/net/java/sip/communicator/impl/replacement/viddler"
prefix="net/java/sip/communicator/impl/replacement/viddler"/>
<zipfileset dir="${dest}/net/java/sip/communicator/service/replacement"
prefix="net/java/sip/communicator/service/replacement"/>
</jar>
</target>

@ -104,7 +104,9 @@ felix.auto.start.66= \
reference:file:sc-bundles/swing-ui.jar \
reference:file:sc-bundles/updatechecker.jar \
reference:file:sc-bundles/swingnotification.jar \
reference:file:sc-bundles/osdependent.jar
reference:file:sc-bundles/osdependent.jar \
reference:file:sc-bundles/json.jar \
reference:file:sc-bundles/replacement.jar
felix.auto.start.67= \
reference:file:sc-bundles/pluginmanager.jar \

@ -26,6 +26,7 @@
import net.java.sip.communicator.service.notification.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.replacement.*;
import net.java.sip.communicator.service.replacement.smilies.*;
import net.java.sip.communicator.service.resources.*;
import net.java.sip.communicator.service.shutdown.*;
import net.java.sip.communicator.service.systray.*;
@ -77,6 +78,8 @@ public class GuiActivator implements BundleActivator
private static MediaService mediaService;
private static SmiliesReplacementService smiliesService;
private static AccountManager accountManager;
private static List<ContactSourceService> contactSources;
@ -655,6 +658,24 @@ public static Map<String, ReplacementService> getReplacementSources()
return replacementSourcesMap;
}
/**
* Returns the <tt>SmiliesReplacementService</tt> obtained from the bundle
* context.
*
* @return the <tt>SmiliesReplacementService</tt> implementation obtained
* from the bundle context
*/
public static SmiliesReplacementService getSmiliesReplacementSource()
{
if (smiliesService == null)
{
smiliesService
= ServiceUtils.getService(bundleContext,
SmiliesReplacementService.class);
}
return smiliesService;
}
/**
* Sets the <tt>contactList</tt> component currently used to show the
* contact list.

@ -15,6 +15,7 @@
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.lookandfeel.*;
import net.java.sip.communicator.impl.gui.utils.*;
import net.java.sip.communicator.service.replacement.smilies.*;
import net.java.sip.communicator.util.swing.*;
/**
@ -30,11 +31,26 @@ public class SmileysSelectorBox
MouseListener,
PopupMenuListener
{
/**
* The chat write panel.
*/
private final ChatWritePanel chatWritePanel;
/**
* The smiley text label.
*/
private final JLabel smileyTextLabel = new JLabel();
/**
* The smiley description label.
*/
private final JLabel smileyDescriptionLabel = new JLabel();
/**
* The smilies service.
*/
private final SmiliesReplacementService smiliesService;
/**
* Initializes a new <tt>SmileysSelectorBox</tt> instance.
*
@ -62,6 +78,8 @@ public SmileysSelectorBox(ChatWritePanel writePanel)
* they are not always necessary.
*/
popupMenu.addPopupMenuListener(this);
this.smiliesService = GuiActivator.getSmiliesReplacementSource();
}
/**
@ -139,7 +157,8 @@ private static class SmileyMenuItem
*/
public SmileyMenuItem(Smiley smiley)
{
super(new ImageIcon(ImageLoader.getImage(smiley.getImageID())));
super(GuiActivator.getResources().getImage(smiley.getImageID()));
this.setUI(new SIPCommMenuItemUI());
this.smiley = smiley;
@ -157,7 +176,7 @@ public void mouseEntered(MouseEvent e)
Smiley smiley = smileyItem.smiley;
ImageIcon imageIcon
= GuiActivator.getResources().getImage(smiley.getImageID().getId());
= GuiActivator.getResources().getImage(smiley.getImageID());
smileyItem.setIcon(imageIcon);
smileyDescriptionLabel.setText(smiley.getDescription());
@ -191,7 +210,7 @@ public void mouseReleased(MouseEvent e) {}
private void clearMouseOverEffects(SmileyMenuItem smileyItem)
{
ImageIcon imageIcon =
new ImageIcon(ImageLoader.getImage(smileyItem.smiley.getImageID()));
GuiActivator.getResources().getImage(smileyItem.smiley.getImageID());
smileyItem.setIcon(imageIcon);
smileyTextLabel.setText("");
@ -227,7 +246,7 @@ public void popupMenuWillBecomeVisible(PopupMenuEvent e)
if (popupMenu.getComponentIndex(smileyTextLabel) != -1)
return;
Collection<Smiley> imageList = ImageLoader.getDefaultSmileyPack();
Collection<Smiley> imageList = smiliesService.getSmiliesPack();
Dimension gridDimensions
= this.calculateGridDimensions(imageList.size());

@ -34,6 +34,7 @@ Import-Package: org.osgi.framework,
net.java.sip.communicator.service.neomedia.device,
net.java.sip.communicator.service.contactsource,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.replacement.smilies,
net.java.sip.communicator.util,
net.java.sip.communicator.util.swing,
net.java.sip.communicator.util.swing.border,

@ -1226,179 +1226,6 @@ public class ImageLoader
public static final ImageID HEADPHONE
= new ImageID("service.gui.soundlevel.HEADPHONE");
/*
* =====================================================================
* ---------------------------- SMILIES --------------------------------
* =====================================================================
*/
public static final ImageID SMILEY1
= new ImageID("service.gui.smileys.SMILEY1");
public static final ImageID SMILEY2
= new ImageID("service.gui.smileys.SMILEY2");
public static final ImageID SMILEY3
= new ImageID("service.gui.smileys.SMILEY3");
public static final ImageID SMILEY4
= new ImageID("service.gui.smileys.SMILEY4");
public static final ImageID SMILEY5
= new ImageID("service.gui.smileys.SMILEY5");
public static final ImageID SMILEY6
= new ImageID("service.gui.smileys.SMILEY6");
public static final ImageID SMILEY7
= new ImageID("service.gui.smileys.SMILEY7");
public static final ImageID SMILEY8
= new ImageID("service.gui.smileys.SMILEY8");
public static final ImageID SMILEY9
= new ImageID("service.gui.smileys.SMILEY9");
public static final ImageID SMILEY10
= new ImageID("service.gui.smileys.SMILEY10");
public static final ImageID SMILEY11
= new ImageID("service.gui.smileys.SMILEY11");
public static final ImageID SMILEY12
= new ImageID("service.gui.smileys.SMILEY12");
public static final ImageID SMILEY13
= new ImageID("service.gui.smileys.SMILEY13");
public static final ImageID SMILEY14
= new ImageID("service.gui.smileys.SMILEY14");
public static final ImageID SMILEY15
= new ImageID("service.gui.smileys.SMILEY15");
public static final ImageID SMILEY16
= new ImageID("service.gui.smileys.SMILEY16");
public static final ImageID SMILEY17
= new ImageID("service.gui.smileys.SMILEY17");
public static final ImageID SMILEY18
= new ImageID("service.gui.smileys.SMILEY18");
public static final ImageID SMILEY19
= new ImageID("service.gui.smileys.SMILEY19");
public static final ImageID SMILEY20
= new ImageID("service.gui.smileys.SMILEY20");
/**
* The default pack of <tt>Smiley</tt>s.
*/
private static Collection<Smiley> defaultSmileyPack;
/**
* Load default smileys pack.
*
* @return the ArrayList of all smileys.
*/
public static Collection<Smiley> getDefaultSmileyPack()
{
/*
* In order to not use a separate sync root for defaultSmileyPack, use
* one of the constants it contains.
*/
synchronized (SMILEY1)
{
if (defaultSmileyPack != null)
return defaultSmileyPack;
List<Smiley> defaultSmileyList = new ArrayList<Smiley>();
defaultSmileyList.add(new Smiley(SMILEY1,
new String[] {":((", ":-((", ":((", ":(", ":-(", "(sad)"},
"Sad"));
defaultSmileyList.add(new Smiley(SMILEY2,
new String[] {"(angel)" }, "Angel"));
defaultSmileyList.add(new Smiley(SMILEY3,
new String[] {":-*", ":*", "(kiss)"}, "Kiss"));
defaultSmileyList.add(new Smiley(SMILEY4,
new String[] {":-0", "(shocked)"}, "Shocked"));
defaultSmileyList.add(new Smiley(SMILEY5,
new String[] { ";-((", ";((", ";-(", ";(", ":'(", ":'-(",
":~-(", ":~(", "(upset)" }, "Upset"));
defaultSmileyList.add(new Smiley(SMILEY6,
new String[] {"(L)" , "(l)", "(H)", "(h)"}, "In love"));
defaultSmileyList.add(new Smiley(SMILEY7,
new String[] {"(blush)"}, "Blushing"));
defaultSmileyList.add(new Smiley(SMILEY8,
new String[] {":-P", ":P", ":-p", ":p" }, "Tongue out"));
defaultSmileyList.add(new Smiley(SMILEY9,
new String[] {":-))", ":))", ";-))", ";))", "(lol)"},
"Laughing"));
defaultSmileyList.add(new Smiley(SMILEY10,
new String[] {"(y)", "(Y)", "(ok)"}, "Ok"));
defaultSmileyList.add(new Smiley(SMILEY11,
new String[] {";-)", ";)", ":-)", ":)"}, "Smile"));
defaultSmileyList.add(new Smiley(SMILEY12,
new String[] {"(sick)"}, "Sick"));
defaultSmileyList.add(new Smiley(SMILEY13,
new String[] {"(n)", "(N)" }, "No"));
defaultSmileyList.add(new Smiley(SMILEY14,
new String[] {"(chuckle)" }, "Chuckle"));
defaultSmileyList.add(new Smiley(SMILEY15,
new String[] {"(wave)" }, "Waving"));
defaultSmileyList.add(new Smiley(SMILEY16,
new String[] {"(clap)"}, "Clapping"));
defaultSmileyList.add(new Smiley(SMILEY17,
new String[] {"(angry)"}, "Angry"));
defaultSmileyList.add(new Smiley(SMILEY18,
new String[] {"(bomb)"}, "Explosing"));
defaultSmileyList.add(new Smiley(SMILEY19,
new String[] {"(search)"}, "Searching"));
defaultSmileyList.add(new Smiley(SMILEY20,
new String[] {"(oops)"}, "Oops"));
defaultSmileyPack
= Collections.unmodifiableCollection(defaultSmileyList);
return defaultSmileyPack;
}
}
/**
* Returns a Smiley object for a given smiley string.
* @param smileyString One of :-), ;-), etc.
* @return A Smiley object for a given smiley string.
*/
public static Smiley getSmiley(String smileyString)
{
for (Smiley smiley : getDefaultSmileyPack())
for (String srcString : smiley.getSmileyStrings())
if (srcString.equals(smileyString))
return smiley;
return null;
}
/**
* Loads an image from a given image identifier.
*

@ -4,10 +4,10 @@ Bundle-Description: A bundle providing processing for Blip.tv previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
org.apache.http
org.apache.http,
org.json

@ -59,7 +59,6 @@ public ReplacementServiceDailymotionImpl()
*/
public String getReplacedMessage(final String chatString)
{
final Pattern p =
Pattern.compile(DAILYMOTION_PATTERN, Pattern.CASE_INSENSITIVE
| Pattern.DOTALL);

@ -4,11 +4,10 @@ Bundle-Description: A bundle providing replacement for dailymotion links.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.service.configuration.event,
net.java.sip.communicator.util,
net.java.sip.communicator.service.version,
net.java.sip.communicator.service.replacement
net.java.sip.communicator.service.version

@ -4,11 +4,10 @@ Bundle-Description: A bundle providing replacement for direct image links.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.service.configuration.event,
net.java.sip.communicator.util,
net.java.sip.communicator.service.version,
net.java.sip.communicator.service.replacement
net.java.sip.communicator.service.version

@ -4,10 +4,10 @@ Bundle-Description: A bundle providing processing for flickr previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
org.apache.http
org.apache.http,
org.json

@ -4,10 +4,10 @@ Bundle-Description: A bundle providing processing for Hulu previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
org.apache.http
org.apache.http,
org.json

@ -4,9 +4,8 @@ Bundle-Description: A bundle providing processing for metacafe previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement
net.java.sip.communicator.util

@ -8,8 +8,8 @@
import java.util.*;
import java.util.regex.*;
import net.java.sip.communicator.impl.gui.utils.*;
import net.java.sip.communicator.service.replacement.*;
import net.java.sip.communicator.service.replacement.smilies.*;
import net.java.sip.communicator.util.*;
/**
@ -20,7 +20,7 @@
* @author Purvesh Sahoo
*/
public class ReplacementServiceSmileyImpl
implements ReplacementService
implements SmiliesReplacementService
{
/**
* The compiled <tt>Pattern</tt> which matches {@link #smileyStrings}.
@ -61,9 +61,9 @@ public String getReplacedMessage(final String chatString)
{
String startPlainTextTag = START_PLAINTEXT_TAG;
String endPlainTextTag = END_PLAINTEXT_TAG;
Collection<Smiley> smileys = ImageLoader.getDefaultSmileyPack();
Collection<Smiley> smilies = Resources.getDefaultSmileyPack();
Matcher m = getSmileyPattern(smileys).matcher(chatString);
Matcher m = getSmileyPattern(smilies).matcher(chatString);
StringBuffer msgBuffer = new StringBuffer();
int prevEnd = 0;
@ -79,8 +79,8 @@ public String getReplacedMessage(final String chatString)
msgBuffer.append("<IMG SRC=\"");
try
{
msgBuffer.append(ImageLoader.getSmiley(smileyString)
.getImagePath(SmileyActivator.getResources()));
msgBuffer.append(
Resources.getSmiley(smileyString).getImagePath());
}
catch (Exception e)
{
@ -162,7 +162,7 @@ private static Pattern getSmileyPattern(Collection<Smiley> smileys)
return smileyPattern;
}
}
/**
* Returns the source name
*
@ -172,4 +172,13 @@ public String getSourceName()
{
return SMILEY_SOURCE;
}
/**
* Returns the smileys pack to use in the user interface.
* @return a collection of all smileys available
*/
public Collection<Smiley> getSmiliesPack()
{
return Resources.getDefaultSmileyPack();
}
}

@ -0,0 +1,118 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license. See terms of license at gnu.org.
*/
package net.java.sip.communicator.impl.replacement.smiley;
import java.util.*;
import net.java.sip.communicator.service.replacement.smilies.*;
/**
* The <tt>Resources</tt> is used to access smiley icons.
*
* @author Yana Stamcheva
*/
public class Resources
{
/**
* The default pack of <tt>Smiley</tt>s.
*/
private static Collection<Smiley> defaultSmileyPack;
/**
* Load default smileys pack.
*
* @return the ArrayList of all smileys.
*/
public static Collection<Smiley> getDefaultSmileyPack()
{
if (defaultSmileyPack != null)
return defaultSmileyPack;
List<Smiley> defaultSmileyList = new ArrayList<Smiley>();
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY1",
new String[] {":((", ":-((", ":((", ":(", ":-(", "(sad)"},
"Sad"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY2",
new String[] {"(angel)" }, "Angel"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY3",
new String[] {":-*", ":*", "(kiss)"}, "Kiss"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY4",
new String[] {":-0", "(shocked)"}, "Shocked"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY5",
new String[] { ";-((", ";((", ";-(", ";(", ":'(", ":'-(",
":~-(", ":~(", "(upset)" }, "Upset"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY6",
new String[] {"(L)" , "(l)", "(H)", "(h)"}, "In love"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY7",
new String[] {"(blush)"}, "Blushing"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY8",
new String[] {":-P", ":P", ":-p", ":p" }, "Tongue out"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY9",
new String[] {":-))", ":))", ";-))", ";))", "(lol)"},
"Laughing"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY10",
new String[] {"(y)", "(Y)", "(ok)"}, "Ok"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY11",
new String[] {";-)", ";)", ":-)", ":)"}, "Smile"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY12",
new String[] {"(sick)"}, "Sick"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY13",
new String[] {"(n)", "(N)" }, "No"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY14",
new String[] {"(chuckle)" }, "Chuckle"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY15",
new String[] {"(wave)" }, "Waving"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY16",
new String[] {"(clap)"}, "Clapping"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY17",
new String[] {"(angry)"}, "Angry"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY18",
new String[] {"(bomb)"}, "Explosing"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY19",
new String[] {"(search)"}, "Searching"));
defaultSmileyList.add(new SmileyImpl("service.gui.smileys.SMILEY20",
new String[] {"(oops)"}, "Oops"));
defaultSmileyPack
= Collections.unmodifiableCollection(defaultSmileyList);
return defaultSmileyPack;
}
/**
* Returns a Smiley object for a given smiley string.
* @param smileyString One of :-), ;-), etc.
* @return A Smiley object for a given smiley string.
*/
public static Smiley getSmiley(String smileyString)
{
for (Smiley smiley : getDefaultSmileyPack())
for (String srcString : smiley.getSmileyStrings())
if (srcString.equals(smileyString))
return smiley;
return null;
}
}

@ -9,6 +9,7 @@
import java.util.*;
import net.java.sip.communicator.service.replacement.*;
import net.java.sip.communicator.service.replacement.smilies.*;
import net.java.sip.communicator.service.resources.*;
import net.java.sip.communicator.util.*;
@ -64,8 +65,12 @@ public void start(BundleContext context) throws Exception
ReplacementServiceSmileyImpl.SMILEY_SOURCE);
smileySource = new ReplacementServiceSmileyImpl();
smileyServReg =
context.registerService(ReplacementService.class.getName(),
smileyServReg
= context.registerService(SmiliesReplacementService.class.getName(),
smileySource, hashtable);
smileyServReg
= context.registerService(ReplacementService.class.getName(),
smileySource, hashtable);
logger.info("Smiley source implementation [STARTED].");

@ -4,12 +4,12 @@
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.impl.gui.utils;
package net.java.sip.communicator.impl.replacement.smiley;
import java.net.*;
import java.util.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.service.replacement.smilies.*;
import net.java.sip.communicator.service.resources.*;
/**
@ -18,12 +18,22 @@
* @author Yana Stamcheva
* @author Lubomir Marinov
*/
public class Smiley
public class SmileyImpl
implements Smiley
{
/**
* The description of the smiley
*/
private final String description;
private final ImageID imageID;
/**
* The identifier of the smiley icon.
*/
private final String imageID;
/**
* The strings corresponding to this smiley, e.g. :), :-), etc.
*/
private final List<String> smileyStrings;
/**
@ -34,7 +44,7 @@ public class Smiley
* icon.
* @param description the description of the smiley
*/
public Smiley(ImageID imageID, String[] smileyStrings, String description)
public SmileyImpl(String imageID, String[] smileyStrings, String description)
{
this.imageID = imageID;
this.smileyStrings
@ -76,9 +86,9 @@ public String getDefaultString()
* Returns the identifier of the image corresponding to this smiley.
* @return the identifier of the image corresponding to this smiley.
*/
public ImageID getImageID()
public String getImageID()
{
return this.imageID;
return imageID;
}
/**
@ -87,31 +97,11 @@ public ImageID getImageID()
*/
public String getImagePath()
{
URL url
= GuiActivator.getResources()
.getImageURL(this.getImageID().getId());
if(url == null)
return null;
return url.toString();
}
/**
* Returns the path of the image corresponding to this smiley.
* @param resourcesService The ResourceManagementService required to get the
* image URL.
* @return the path of the image corresponding to this smiley.
*/
public String getImagePath(ResourceManagementService resourcesService)
{
URL url
= resourcesService
.getImageURL(this.getImageID().getId());
URL url = SmileyActivator.getResources().getImageURL(imageID);
if(url == null)
return null;
return url.toString();
}
}
}

@ -4,12 +4,12 @@ Bundle-Description: A bundle providing processing for smileys.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.replacement.smilies,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.service.neomedia,
net.java.sip.communicator.service.configuration.event,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.gui

@ -4,9 +4,8 @@ Bundle-Description: A bundle providing processing for Twitpic previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement
net.java.sip.communicator.util

@ -4,9 +4,8 @@ Bundle-Description: A bundle providing processing for vbox7 previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement
net.java.sip.communicator.util

@ -4,10 +4,9 @@ Bundle-Description: A bundle providing processing for Viddler previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
org.apache.http

@ -4,10 +4,10 @@ Bundle-Description: A bundle providing processing for vimeo previews.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
org.apache.http
org.apache.http,
org.json

@ -4,11 +4,11 @@ Bundle-Description: A bundle providing replacement for youtube links.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 1.0.0
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement
Import-Package: org.osgi.framework,
net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.configuration,
net.java.sip.communicator.service.resources,
net.java.sip.communicator.service.configuration.event,
net.java.sip.communicator.util,
net.java.sip.communicator.service.replacement,
org.apache.http
org.apache.http,
org.json

@ -347,7 +347,6 @@ else if (f.getName().equals("styles"))
styles = true;
}
}
}
else
{

@ -24,7 +24,8 @@ Import-Package: org.osgi.framework,
javax.naming.directory,
javax.xml.parsers,
org.w3c.dom,
org.xml.sax,
org.xml.sax,
org.json,
javax.swing,
javax.swing.event,
javax.swing.table,

@ -5,8 +5,6 @@
*/
package net.java.sip.communicator.service.replacement;
import java.util.*;
/**
* A service used to provide substitution for any text in chat messages, like
* smileys, video and image previews, etc.
@ -29,7 +27,7 @@ public interface ReplacementService
* in case of no match.
*/
public String getReplacedMessage(String chatString);
/**
* Returns the name of the replacement source.
*

@ -0,0 +1,7 @@
Bundle-Name: Replacement Service
Bundle-Description: Replacement Service.
Bundle-Vendor: sip-communicator.org
Bundle-Version: 0.0.1
System-Bundle: yes
Export-Package: net.java.sip.communicator.service.replacement,
net.java.sip.communicator.service.replacement.smilies

@ -0,0 +1,49 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.service.replacement.smilies;
import java.util.*;
/**
* The <tt>Smiley</tt> interface used to represent a smiley
*
* @author Yana Stamcheva
*/
public interface Smiley
{
/**
* Returns the description of this smiley.
*
* @return the description of this smiley.
*/
public String getDescription();
/**
* Returns the set of Strings corresponding to this smiley.
* @return the set of Strings corresponding to this smiley.
*/
public List<String> getSmileyStrings();
/**
* Returns the default String corresponding for this smiley. For example
* ":-)".
* @return the default String corresponding for this smiley.
*/
public String getDefaultString();
/**
* Returns the identifier of the image corresponding to this smiley.
* @return the identifier of the image corresponding to this smiley.
*/
public String getImageID();
/**
* Returns the path of the image corresponding to this smiley.
* @return the path of the image corresponding to this smiley.
*/
public String getImagePath();
}

@ -0,0 +1,25 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.service.replacement.smilies;
import java.util.*;
import net.java.sip.communicator.service.replacement.*;
/**
*
* @author Yana Stamcheva
*/
public interface SmiliesReplacementService
extends ReplacementService
{
/**
* Returns the smileys pack to use in the user interface.
* @return a collection of all smileys available
*/
public Collection<Smiley> getSmiliesPack();
}
Loading…
Cancel
Save