diff options
Diffstat (limited to 'src/net/java/sip/communicator/plugin/rssaccregwizz')
6 files changed, 0 insertions, 934 deletions
diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/FirstWizardPage.java b/src/net/java/sip/communicator/plugin/rssaccregwizz/FirstWizardPage.java deleted file mode 100644 index 9f46548..0000000 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/FirstWizardPage.java +++ /dev/null @@ -1,300 +0,0 @@ -/* - * Jitsi, the OpenSource Java VoIP and Instant Messaging client. - * - * Distributable under LGPL license. - * See terms of license at gnu.org. - */ -package net.java.sip.communicator.plugin.rssaccregwizz; - -import java.awt.*; -import java.util.*; - -import javax.swing.*; -import javax.swing.event.*; - -import net.java.sip.communicator.service.gui.*; -import net.java.sip.communicator.service.protocol.*; -import net.java.sip.communicator.plugin.desktoputil.*; - -/** - * The <tt>FirstWizardPage</tt> is the page, where user could enter the user ID - * and the password of the account. - * - * @author Emil Ivov/Jean-Albert Vescovo - */ -public class FirstWizardPage - extends TransparentPanel - implements WizardPage, - DocumentListener -{ - /** - * An Eclipse generated UID. - */ - private static final long serialVersionUID = -4099426006855229937L; - - public static final String FIRST_PAGE_IDENTIFIER = "FirstPageIdentifier"; - - private JPanel labelsPanel = new TransparentPanel(); - - private JLabel infoTitle= new JLabel( - Resources.getString("plugin.rssaccregwizz.ACCOUNT_INFO_TITLE")); - - private JPanel infoTitlePanel - = new TransparentPanel(new FlowLayout(FlowLayout.CENTER)); - - private JLabel existingAccountLabel = new JLabel( - Resources.getString("plugin.rssaccregwizz.ERROR_ACCOUNT_EXISTS")); - - private JPanel existingAccountPanel = - new TransparentPanel(new FlowLayout(FlowLayout.LEFT)); - - private JTextArea accountInfoArea = new JTextArea( - Resources.getString("plugin.rssaccregwizz.ACCOUNT_INFO")); - - private JLabel accountInfoAttentionArea = new JLabel( - Resources.getString("plugin.rssaccregwizz.ACCOUNT_ATTENTION")); - - private JPanel accountInfoAttentionPanel - = new TransparentPanel(new FlowLayout(FlowLayout.LEFT)); - - private Object nextPageIdentifier = WizardPage.SUMMARY_PAGE_IDENTIFIER; - - private RssAccountRegistration registration = null; - - private WizardContainer wizardContainer; - - private boolean isCommitted = false; - - /** - * Creates an instance of <tt>FirstWizardPage</tt>. - * @param registration the <tt>RssAccountRegistration</tt>, where - * all data through the wizard are stored - * @param wizardContainer the wizardContainer, where this page will - * be added - */ - public FirstWizardPage(RssAccountRegistration registration, - WizardContainer wizardContainer) - { - super(new BorderLayout()); - - this.wizardContainer = wizardContainer; - - this.registration = registration; - - this.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); - - this.labelsPanel.setLayout( - new BoxLayout(labelsPanel, BoxLayout.Y_AXIS)); - - this.add(labelsPanel, BorderLayout.NORTH); - - this.infoTitle.setFont( - infoTitle.getFont().deriveFont(Font.BOLD, 14.0f)); - - this.infoTitlePanel.add(infoTitle); - - this.labelsPanel.add(infoTitlePanel); - - this.accountInfoAttentionArea.setFont( - infoTitle.getFont().deriveFont(Font.BOLD, 14.0f)); - - this.accountInfoAttentionPanel.add(accountInfoAttentionArea); - - this.accountInfoArea.setWrapStyleWord(true); - this.accountInfoArea.setLineWrap(true); - this.accountInfoArea.setEditable(false); - this.accountInfoArea.setOpaque(false); - - this.existingAccountLabel.setForeground(Color.RED); - this.existingAccountPanel.add(existingAccountLabel); - - if(!isExistingAccount("rss")) - { - labelsPanel.remove(existingAccountPanel); - labelsPanel.add(accountInfoAttentionPanel); - labelsPanel.add(accountInfoArea); - - setNextButtonAccordingToUserID(true); - } - else - { - labelsPanel.remove(accountInfoAttentionPanel); - labelsPanel.remove(accountInfoArea); - labelsPanel.add(existingAccountPanel); - - setNextButtonAccordingToUserID(false); - } - } - - /** - * Implements the <code>WizardPage.getIdentifier</code> to return - * this page identifier. - * - * @return the Identifier of the first page in this wizard. - */ - public Object getIdentifier() - { - return FIRST_PAGE_IDENTIFIER; - } - - /** - * Implements the <code>WizardPage.getNextPageIdentifier</code> to return - * the next page identifier - the summary page. - * - * @return the identifier of the page following this one. - */ - public Object getNextPageIdentifier() - { - return nextPageIdentifier; - } - - /** - * Implements the <code>WizardPage.getBackPageIdentifier</code> to return - * the back identifier. In this case it's null because this is the first - * wizard page. - * - * @return the identifier of the previous wizard page - */ - public Object getBackPageIdentifier() - { - return null; - } - - /** - * Implements the <code>WizardPage.getWizardForm</code> to return - * this panel. - * - * @return the component to be displayed in this wizard page. - */ - public Object getWizardForm() - { - return this; - } - - /** - * Before this page is displayed enables or disables the "Next" wizard - * button according to whether the UserID field is empty. - */ - public void pageShowing() - { - if(isExistingAccount("RSS")) setNextButtonAccordingToUserID(false); - else setNextButtonAccordingToUserID(true); - } - - /** - * Saves the user input when the "Next" wizard buttons is clicked. - */ - public void commitPage() - { - nextPageIdentifier = SUMMARY_PAGE_IDENTIFIER; - - registration.setUserID("RSS"); - - isCommitted = true; - } - - /** - * Enables or disables the "Next" wizard button according to whether the - * User ID field is empty. - * - * @param newOne true if the Next/Finish button should be enabled and false - * otherwise. - */ - private void setNextButtonAccordingToUserID(boolean newOne) - { - if(!newOne) - { - wizardContainer.setNextFinishButtonEnabled(false); - } - else - { - wizardContainer.setNextFinishButtonEnabled(true); - } - } - - /** - * Handles the <tt>DocumentEvent</tt> triggered when user types in the - * User ID field. Enables or disables the "Next" wizard button according to - * whether the User ID field is empty. - * - * @param event the event containing the update. - */ - public void insertUpdate(DocumentEvent event) - { - } - - /** - * Handles the <tt>DocumentEvent</tt> triggered when user deletes letters - * from the UserID field. Enables or disables the "Next" wizard button - * according to whether the UserID field is empty. - * - * @param event the event containing the update. - */ - public void removeUpdate(DocumentEvent event) - { - } - - public void changedUpdate(DocumentEvent event) - { - } - - public void pageHiding() - { - } - - public void pageShown() - { - } - - public void pageBack() - { - } - - /** - * Fills the UserID and Password fields in this panel with the data comming - * from the given protocolProvider. - * @param protocolProvider The <tt>ProtocolProviderService</tt> to load the - * data from. - */ - public void loadAccount(ProtocolProviderService protocolProvider) - { - } - - /** - * Verifies whether there is already an account installed with the same - * details as the one that the user has just entered. - * - * @param userID the name of the user that the account is registered for - * @return true if there is already an account for this userID and false - * otherwise. - */ - private boolean isExistingAccount(String userID) - { - ProtocolProviderFactory factory - = RssAccRegWizzActivator.getRssProtocolProviderFactory(); - - ArrayList<AccountID> registeredAccounts - = factory.getRegisteredAccounts(); - - for (int i = 0; i < registeredAccounts.size(); i++) - { - AccountID accountID = registeredAccounts.get(i); - - if (userID.equalsIgnoreCase(accountID.getUserID())) - { - return true; - } - } - return false; - } - - public Object getSimpleForm() - { - return labelsPanel; - } - - public boolean isCommitted() - { - return isCommitted; - } -} diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/Resources.java b/src/net/java/sip/communicator/plugin/rssaccregwizz/Resources.java deleted file mode 100644 index fedca10..0000000 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/Resources.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Jitsi, the OpenSource Java VoIP and Instant Messaging client. - * - * Distributable under LGPL license. - * See terms of license at gnu.org. - */ -package net.java.sip.communicator.plugin.rssaccregwizz; - -import net.java.sip.communicator.service.resources.*; - -import org.jitsi.service.resources.*; - -/** - * The <tt>Resources</tt> class manages the access to the internationalization - * properties files and the image resources used in this plugin. - * - * @author Emil Ivov - */ -public class Resources -{ - private static ResourceManagementService resourcesService; - - /** - * A constant pointing to the RSS protocol logo image. - */ - public static ImageID RSS_LOGO - = new ImageID("service.protocol.rss.RSS_16x16"); - - /** - * A constant pointing to the RSS protocol wizard page image. - */ - public static ImageID PAGE_IMAGE - = new ImageID("service.protocol.rss.RSS_64x64"); - - /** - * Returns an internationalized string corresponding to the given key. - * - * @param key The key of the string. - * @return An internationalized string corresponding to the given key. - */ - public static String getString(String key) - { - return getResources().getI18NString(key); - } - - /** - * Loads an image from a given image identifier. - * - * @param imageID The identifier of the image. - * @return The image for the given identifier. - */ - public static byte[] getImage(ImageID imageID) - { - return getResources().getImageInBytes(imageID.getId()); - } - - /** - * Returns the <tt>ResourceManagementService</tt>. - * - * @return the <tt>ResourceManagementService</tt> - */ - public static ResourceManagementService getResources() - { - if (resourcesService == null) - resourcesService = - ResourceManagementServiceUtils - .getService(RssAccRegWizzActivator.bundleContext); - return resourcesService; - } -} diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccRegWizzActivator.java b/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccRegWizzActivator.java deleted file mode 100644 index ebe7be9..0000000 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccRegWizzActivator.java +++ /dev/null @@ -1,135 +0,0 @@ -/* - * Jitsi, the OpenSource Java VoIP and Instant Messaging client. - * - * Distributable under LGPL license. - * See terms of license at gnu.org. - */ -package net.java.sip.communicator.plugin.rssaccregwizz; - -import java.util.*; - -import net.java.sip.communicator.service.gui.*; -import net.java.sip.communicator.service.protocol.*; -import net.java.sip.communicator.util.*; - -import org.osgi.framework.*; - -/** - * Registers the <tt>RssAccountRegistrationWizard</tt> in the UI Service. - * - * @author Emil Ivov - */ -public class RssAccRegWizzActivator - implements BundleActivator -{ - private static Logger logger = Logger.getLogger( - RssAccRegWizzActivator.class.getName()); - - /** - * A currently valid bundle context. - */ - public static BundleContext bundleContext; - - private static UIService uiService; - - /** - * Starts this bundle. - * @param bc the currently valid <tt>BundleContext</tt>. - */ - public void start(BundleContext bc) - { - if (logger.isInfoEnabled()) - logger.info("Loading rss account wizard."); - - bundleContext = bc; - - ServiceReference uiServiceRef = bundleContext - .getServiceReference(UIService.class.getName()); - - uiService = (UIService) bundleContext.getService(uiServiceRef); - - WizardContainer wizardContainer - = uiService.getAccountRegWizardContainer(); - - RssAccountRegistrationWizard rssWizard - = new RssAccountRegistrationWizard(wizardContainer); - - Hashtable<String, String> containerFilter - = new Hashtable<String, String>(); - - containerFilter.put( - ProtocolProviderFactory.PROTOCOL, - ProtocolNames.RSS); - - bundleContext.registerService( - AccountRegistrationWizard.class.getName(), - rssWizard, - containerFilter); - - if (logger.isInfoEnabled()) - logger.info("RSS account registration wizard [STARTED]."); - } - - /** - * Called when this bundle is stopped so the Framework can perform the - * bundle-specific activities necessary to stop the bundle. - * - * @param context The execution context of the bundle being stopped. - */ - public void stop(BundleContext context) - { - } - - /** - * Returns the <tt>ProtocolProviderFactory</tt> for the Rss protocol. - * @return the <tt>ProtocolProviderFactory</tt> for the Rss protocol - */ - public static ProtocolProviderFactory getRssProtocolProviderFactory() - { - ServiceReference[] serRefs = null; - String osgiFilter - = "(" - + ProtocolProviderFactory.PROTOCOL - + "=" - + ProtocolNames.RSS - + ")"; - - try - { - serRefs - = bundleContext.getServiceReferences( - ProtocolProviderFactory.class.getName(), - osgiFilter); - } - catch (InvalidSyntaxException ex) - { - logger.error(ex); - } - - return - (serRefs == null) - ? null - : (ProtocolProviderFactory) - bundleContext.getService(serRefs[0]); - } - - /** - * Returns the <tt>UIService</tt>. - * - * @return the <tt>UIService</tt> - */ - public static UIService getUIService() - { - return uiService; - } - - /** - * Returns the bundleContext that we received when we were started. - * - * @return a currently valid instance of a bundleContext. - */ - public BundleContext getBundleContext() - { - return bundleContext; - } -} diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistration.java b/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistration.java deleted file mode 100644 index b6540fb..0000000 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistration.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Jitsi, the OpenSource Java VoIP and Instant Messaging client. - * - * Distributable under LGPL license. - * See terms of license at gnu.org. - */ -/** - * The <tt>RssAccountRegistration</tt> is used to store all user input data - * through the <tt>RssAccountRegistrationWizard</tt>. - * - * @author Emil Ivov/Jean-Albert Vescovo - */ -package net.java.sip.communicator.plugin.rssaccregwizz; - -public class RssAccountRegistration -{ - private String userID; - private String password; - private boolean rememberPassword; - - /** - * Returns the User ID of the rss registration account. - * @return the User ID of the rss registration account. - */ - public String getUserID() - { - return userID; - } - - /** - * Sets the user ID of the rss registration account. - * @param userID the userID of the rss registration account. - */ - public void setUserID(String userID) - { - this.userID = userID; - } - - /** - * Returns the password of the Rss registration account. - * - * @return the password of the Rss registration account. - */ - public String getPassword() - { - return password; - } - - /** - * Sets the password of the Rss registration account. - * - * @param password the password of the Rss registration account. - */ - public void setPassword(String password) - { - this.password = password; - } - - /** - * Returns <tt>true</tt> if password has to remembered, <tt>false</tt> - * otherwise. - * - * @return <tt>true</tt> if password has to remembered, <tt>false</tt> - * otherwise. - */ - public boolean isRememberPassword() - { - return true; - } - - /** - * Sets the rememberPassword value of this Rss account registration. - * - * @param rememberPassword <tt>true</tt> if password has to remembered, - * <tt>false</tt> otherwise. - */ - public void setRememberPassword(boolean rememberPassword) - { - this.rememberPassword = true; - } - -} diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java deleted file mode 100644 index 7dba5cc..0000000 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java +++ /dev/null @@ -1,314 +0,0 @@ -/* - * Jitsi, the OpenSource Java VoIP and Instant Messaging client. - * - * Distributable under LGPL license. - * See terms of license at gnu.org. - */ -package net.java.sip.communicator.plugin.rssaccregwizz; - -import java.awt.*; -import java.util.*; - -import net.java.sip.communicator.service.gui.*; -import net.java.sip.communicator.service.protocol.*; -import net.java.sip.communicator.util.*; - -import org.osgi.framework.*; - -/** - * The <tt>RssAccountRegistrationWizard</tt> is an implementation of the - * <tt>AccountRegistrationWizard</tt> for the Rss protocol. It allows - * the user to create and configure a new Rss account. - * - * @author Emil Ivov - */ -public class RssAccountRegistrationWizard - extends DesktopAccountRegistrationWizard -{ - private final Logger logger - = Logger.getLogger(RssAccountRegistrationWizard.class); - - /** - * The first page of the rss account registration wizard. - */ - private FirstWizardPage firstWizardPage; - - /** - * The object that we use to store details on an account that we will be - * creating. - */ - private RssAccountRegistration registration - = new RssAccountRegistration(); - - private ProtocolProviderService protocolProvider; - - /** - * Creates an instance of <tt>RssAccountRegistrationWizard</tt>. - * @param wizardContainer the wizard container, where this wizard - * is added - */ - public RssAccountRegistrationWizard(WizardContainer wizardContainer) - { - setWizardContainer(wizardContainer); - - wizardContainer - .setFinishButtonText(Resources.getString("service.gui.ACTIVATE")); - } - - /** - * Implements the <code>AccountRegistrationWizard.getIcon</code> method. - * Returns the icon to be used for this wizard. - * @return byte[] - */ - @Override - public byte[] getIcon() - { - return Resources.getImage(Resources.RSS_LOGO); - } - - /** - * Implements the <code>AccountRegistrationWizard.getPageImage</code> method. - * Returns the image used to decorate the wizard page - * - * @return byte[] the image used to decorate the wizard page - */ - @Override - public byte[] getPageImage() - { - return Resources.getImage(Resources.PAGE_IMAGE); - } - - /** - * Implements the <code>AccountRegistrationWizard.getProtocolName</code> - * method. Returns the protocol name for this wizard. - * @return String - */ - @Override - public String getProtocolName() - { - return Resources.getString("plugin.rssaccregwizz.PROTOCOL_NAME"); - } - - /** - * Implements the <code>AccountRegistrationWizard.getProtocolDescription - * </code> method. Returns the description of the protocol for this wizard. - * @return String - */ - @Override - public String getProtocolDescription() - { - return Resources.getString("plugin.rssaccregwizz.PROTICOL_DESCRIPTION"); - } - - /** - * Returns the set of pages contained in this wizard. - * @return Iterator - */ - @Override - public Iterator<WizardPage> getPages() - { - java.util.List<WizardPage> pages = new ArrayList<WizardPage>(); - firstWizardPage - = new FirstWizardPage(registration, getWizardContainer()); - - pages.add(firstWizardPage); - - return pages.iterator(); - } - - /** - * Returns the set of data that user has entered through this wizard. - * @return Iterator - */ - @Override - public Iterator<Map.Entry<String, String>> getSummary() - { - Hashtable<String, String> summaryTable - = new Hashtable<String, String>(); - - summaryTable.put("User ID", registration.getUserID()); - - return summaryTable.entrySet().iterator(); - } - - /** - * Defines the operations that will be executed when the user clicks on - * the wizard "Signin" button. - * @return the created <tt>ProtocolProviderService</tt> corresponding to the - * new account - * @throws OperationFailedException if the operation didn't succeed - */ - @Override - public ProtocolProviderService signin() - throws OperationFailedException - { - firstWizardPage.commitPage(); - - return signin(registration.getUserID(), null); - } - - /** - * Defines the operations that will be executed when the user clicks on - * the wizard "Signin" button. - * - * @param userName the user name to sign in with - * @param password the password to sign in with - * @return the created <tt>ProtocolProviderService</tt> corresponding to the - * new account - * @throws OperationFailedException if the operation didn't succeed - */ - @Override - public ProtocolProviderService signin(String userName, String password) - throws OperationFailedException - { - ProtocolProviderFactory factory - = RssAccRegWizzActivator.getRssProtocolProviderFactory(); - - return this.installAccount(factory, - userName); - } - - /** - * Creates an account for the given user and password. - * @param providerFactory the ProtocolProviderFactory which will create - * the account - * @param user the user identifier - * @return the <tt>ProtocolProviderService</tt> for the new account. - */ - public ProtocolProviderService installAccount( - ProtocolProviderFactory providerFactory, - String user) - throws OperationFailedException - { - Hashtable<String, String> accountProperties - = new Hashtable<String, String>(); - - accountProperties.put(ProtocolProviderFactory.ACCOUNT_ICON_PATH, - "resources/images/protocol/rss/rss32x32.png"); - - accountProperties.put( - ProtocolProviderFactory.NO_PASSWORD_REQUIRED, - Boolean.toString(true)); - - try - { - AccountID accountID = providerFactory.installAccount( - user, accountProperties); - - ServiceReference serRef = providerFactory - .getProviderForAccount(accountID); - - protocolProvider = (ProtocolProviderService) - RssAccRegWizzActivator.bundleContext - .getService(serRef); - } - catch (IllegalStateException exc) - { - logger.warn(exc.getMessage()); - - throw new OperationFailedException( - "Account already exists.", - OperationFailedException.IDENTIFICATION_CONFLICT); - } - catch (Exception exc) - { - logger.warn(exc.getMessage()); - - throw new OperationFailedException( - "Failed to add account", - OperationFailedException.GENERAL_ERROR); - } - - return protocolProvider; - } - - /** - * Fills the UserID and Password fields in this panel with the data comming - * from the given protocolProvider. - * @param protocolProvider The <tt>ProtocolProviderService</tt> to load the - * data from. - */ - - @Override - public void loadAccount(ProtocolProviderService protocolProvider) - { - this.protocolProvider = protocolProvider; - - setModification(true); - } - - /** - * Returns the size of this wizard. - * @return the size of this wizard - */ - @Override - public Dimension getSize() - { - return new Dimension(600, 500); - } - - /** - * Returns the identifier of the page to show first in the wizard. - * @return the identifier of the page to show first in the wizard. - */ - @Override - public Object getFirstPageIdentifier() - { - return firstWizardPage.getIdentifier(); - } - - /** - * Returns the identifier of the page to show last in the wizard. - * - * @return the identifier of the page to show last in the wizard. - */ - @Override - public Object getLastPageIdentifier() - { - return firstWizardPage.getIdentifier(); - } - - /** - * Returns an example string, which should indicate to the user how the - * user name should look like. - * @return an example string, which should indicate to the user how the - * user name should look like. - */ - @Override - public String getUserNameExample() - { - return null; - } - - /** - * Indicates whether this wizard enables the simple "sign in" form shown - * when the user opens the application for the first time. The simple - * "sign in" form allows user to configure her account in one click, just - * specifying her username and password and leaving any other configuration - * as by default. - * @return <code>true</code> if the simple "Sign in" form is enabled or - * <code>false</code> otherwise. - */ - @Override - public boolean isSimpleFormEnabled() - { - return false; - } - - /** - * Returns a simple account registration form that would be the first form - * shown to the user. Only if the user needs more settings she'll choose - * to open the advanced wizard, consisted by all pages. - * - * @param isCreateAccount indicates if the simple form should be opened as - * a create account form or as a login form - * @return a simple account registration form - */ - @Override - public Object getSimpleForm(boolean isCreateAccount) - { - firstWizardPage - = new FirstWizardPage(registration, getWizardContainer()); - return firstWizardPage.getSimpleForm(); - } -} diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/rssaccregwizz.manifest.mf b/src/net/java/sip/communicator/plugin/rssaccregwizz/rssaccregwizz.manifest.mf deleted file mode 100644 index 16686a8..0000000 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/rssaccregwizz.manifest.mf +++ /dev/null @@ -1,33 +0,0 @@ -Bundle-Activator: net.java.sip.communicator.plugin.rssaccregwizz.RssAccRegWizzActivator -Bundle-Name: Rss account registration wizard -Bundle-Description: Rss account registration wizard. -Bundle-Vendor: jitsi.org -Bundle-Version: 0.0.1 -Bundle-SymbolicName: net.java.sip.communicator.plugin.rssaccregwizz -Import-Package: org.osgi.framework, - net.java.sip.communicator.service.browserlauncher, - org.jitsi.service.configuration, - net.java.sip.communicator.service.contactlist, - net.java.sip.communicator.service.contactlist.event, - net.java.sip.communicator.service.gui, - net.java.sip.communicator.service.gui.event, - net.java.sip.communicator.service.protocol, - net.java.sip.communicator.service.protocol.event, - org.jitsi.service.resources, net.java.sip.communicator.service.resources, - net.java.sip.communicator.util, - net.java.sip.communicator.plugin.desktoputil, - javax.swing, - javax.swing.event, - javax.swing.table, - javax.swing.text, - javax.swing.text.html, - javax.accessibility, - javax.swing.plaf, - javax.swing.plaf.metal, - javax.swing.plaf.basic, - javax.imageio, - javax.swing.filechooser, - javax.swing.tree, - javax.swing.undo, - javax.swing.border - |