Shows error dialog if provisioning failed and is mandatory.

cusax-fix
Damian Minkov 14 years ago
parent 60db791324
commit 8d86192d77

@ -1429,6 +1429,8 @@ plugin.provisioning.CLIPBOARD_FAILED=Failed to copy UUID to clipboard
plugin.provisioning.EXIT_ON_FAIL=Exit the application if the provisioning fails
plugin.provisioning.CREDENTIALS=Last stored provisioning credentials
plugin.provisioning.REMOVE_CREDENTIALS_MESSAGE=Are you sure you want to remove provisioning password?
plugin.provisioning.PROV_FAILED=Provisioning failed
plugin.provisioning.PROV_FAILED_MSG=<html>Provisioning failed. {0}! <br>Please, try again later or contact your administrator.</html>
# packet logging service
plugin.loggingutils.PACKET_LOGGING_CONFIG=Logging

@ -16,7 +16,6 @@
import javax.swing.*;
import javax.swing.UIManager.LookAndFeelInfo;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.event.*;
import net.java.sip.communicator.impl.gui.lookandfeel.*;
import net.java.sip.communicator.impl.gui.main.*;

@ -12,8 +12,8 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.service.gui.*;
import net.java.sip.communicator.util.swing.*;
/**
* This class is responsible for reacting to events generated by pushing any

@ -14,7 +14,6 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.contactlist.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.*;

@ -15,7 +15,6 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.chat.*;
import net.java.sip.communicator.impl.gui.main.contactlist.*;
import net.java.sip.communicator.impl.gui.utils.*;

@ -16,7 +16,6 @@
import javax.swing.text.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.contactlist.*;
import net.java.sip.communicator.impl.gui.main.contactlist.contactsource.*;
import net.java.sip.communicator.service.contactlist.*;

@ -12,7 +12,6 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.utils.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.*;

@ -10,7 +10,6 @@
import java.util.concurrent.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.chat.*;
import net.java.sip.communicator.impl.gui.main.chat.history.*;
import net.java.sip.communicator.impl.gui.main.chatroomslist.*;
@ -22,7 +21,8 @@
import net.java.sip.communicator.service.protocol.globalstatus.*;
import net.java.sip.communicator.util.*;
import org.jdesktop.swingworker.*;
import net.java.sip.communicator.util.swing.*;
import org.jdesktop.swingworker.SwingWorker;
import org.jitsi.service.resources.*;
import org.osgi.framework.*;
// Java 1.6 has javax.swing.SwingWorker so we have to disambiguate.

@ -16,7 +16,6 @@
import javax.swing.tree.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.call.*;
import net.java.sip.communicator.impl.gui.main.contactlist.contactsource.*;
import net.java.sip.communicator.impl.gui.utils.*;

@ -7,10 +7,10 @@
package net.java.sip.communicator.impl.gui.main.contactlist;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.service.contactlist.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.swing.*;
public class ContactListUtils
{

@ -13,6 +13,7 @@
import net.java.sip.communicator.impl.gui.utils.*;
import net.java.sip.communicator.service.contactlist.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.swing.*;
/**
* The <tt>MetaContactListManager</tt> is the class through which we make

@ -15,7 +15,6 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.event.*;
import net.java.sip.communicator.impl.gui.main.*;
import net.java.sip.communicator.impl.gui.main.authorization.*;

@ -14,7 +14,6 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.call.*;
import net.java.sip.communicator.impl.gui.main.contactlist.contactsource.*;
import net.java.sip.communicator.impl.gui.utils.*;

@ -15,6 +15,7 @@
import net.java.sip.communicator.service.protocol.globalstatus.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.swing.*;
import org.osgi.framework.*;
/**

@ -12,7 +12,6 @@
import javax.swing.*;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.event.*;
import net.java.sip.communicator.impl.gui.main.*;
import net.java.sip.communicator.impl.gui.main.call.*;

@ -6,11 +6,11 @@
package net.java.sip.communicator.impl.gui.main.presence;
import net.java.sip.communicator.impl.gui.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.impl.gui.main.login.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.globalstatus.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.swing.*;
import org.jitsi.service.configuration.*;
import java.util.*;

@ -14,7 +14,6 @@
import javax.swing.plaf.basic.*;
import javax.swing.table.*;
import net.java.sip.communicator.impl.gui.customcontrols.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.dns.*;
import net.java.sip.communicator.util.swing.*;

@ -430,15 +430,25 @@ else if(s.indexOf(passwordParam) != -1)
}
}
HttpUtils.HTTPResponseResult res =
HttpUtils.postForm(
url,
PROPERTY_PROVISIONING_USERNAME,
PROPERTY_PROVISIONING_PASSWORD,
paramNames,
paramValues,
usernameIx,
passwordIx);
HttpUtils.HTTPResponseResult res = null;
Throwable errorWhileProvisioning = null;
try
{
res =
HttpUtils.postForm(
url,
PROPERTY_PROVISIONING_USERNAME,
PROPERTY_PROVISIONING_PASSWORD,
paramNames,
paramValues,
usernameIx,
passwordIx);
}
catch(Throwable t)
{
logger.error("Error posting form", t);
errorWhileProvisioning = t;
}
// if there was an error in retrieving stop
if(res == null)
@ -457,6 +467,23 @@ else if(s.indexOf(passwordParam) != -1)
if(ProvisioningActivator.getConfigurationService().getBoolean(
PROPERTY_PROVISIONING_MANDATORY, provisioningMandatory))
{
String errorMsg;
if(errorWhileProvisioning != null)
errorMsg = errorWhileProvisioning.getLocalizedMessage();
else
errorMsg = "";
ErrorDialog ed = new ErrorDialog(
null,
ProvisioningActivator.getResourceService()
.getI18NString("plugin.provisioning.PROV_FAILED"),
ProvisioningActivator.getResourceService()
.getI18NString("plugin.provisioning.PROV_FAILED_MSG",
new String[]{errorMsg}),
errorWhileProvisioning);
ed.setModal(true);
ed.showDialog();
// as shutdown service is not started and other bundles
// are scheduled to start, stop all of them
{

@ -341,74 +341,67 @@ public static HTTPResponseResult postForm(String address,
ArrayList<String> formParamValues,
int usernameParamIx,
int passwordParamIx)
throws Throwable
{
DefaultHttpClient httpClient;
HttpPost postMethod;
HttpEntity resEntity = null;
try
{
// if any authentication exception rise while executing
// will retry
AuthenticationException authEx;
HTTPCredentialsProvider credentialsProvider = null;
do
{
postMethod = new HttpPost(address);
httpClient = getHttpClient(
usernamePropertyName, passwordPropertyName,
postMethod.getURI().getHost(), credentialsProvider);
try
{
// execute post
resEntity = postForm(
httpClient,
postMethod,
address,
usernamePropertyName,
passwordPropertyName,
formParamNames,
formParamValues,
usernameParamIx,
passwordParamIx);
authEx = null;
}
catch(AuthenticationException ex)
{
authEx = ex;
// if any authentication exception rise while executing
// will retry
AuthenticationException authEx;
HTTPCredentialsProvider credentialsProvider = null;
do
{
postMethod = new HttpPost(address);
httpClient = getHttpClient(
usernamePropertyName, passwordPropertyName,
postMethod.getURI().getHost(), credentialsProvider);
// lets reuse credentialsProvider
credentialsProvider = (HTTPCredentialsProvider)
httpClient.getCredentialsProvider();
String userName = credentialsProvider.authUsername;
// clear
credentialsProvider.clear();
// lets show the same username
credentialsProvider.authUsername = userName;
credentialsProvider.errorMessage =
HttpUtilActivator.getResources().getI18NString(
"service.gui.AUTHENTICATION_FAILED",
new String[]
{credentialsProvider.usedScope.getHost()});
}
try
{
// execute post
resEntity = postForm(
httpClient,
postMethod,
address,
usernamePropertyName,
passwordPropertyName,
formParamNames,
formParamValues,
usernameParamIx,
passwordParamIx);
authEx = null;
}
while(authEx != null);
// canceled or no result
if(resEntity == null)
return null;
catch(AuthenticationException ex)
{
authEx = ex;
return new HTTPResponseResult(resEntity, httpClient);
}
catch(Throwable e)
{
logger.error("Error posting form", e);
// lets reuse credentialsProvider
credentialsProvider = (HTTPCredentialsProvider)
httpClient.getCredentialsProvider();
String userName = credentialsProvider.authUsername;
// clear
credentialsProvider.clear();
// lets show the same username
credentialsProvider.authUsername = userName;
credentialsProvider.errorMessage =
HttpUtilActivator.getResources().getI18NString(
"service.gui.AUTHENTICATION_FAILED",
new String[]
{credentialsProvider.usedScope.getHost()});
}
}
while(authEx != null);
return null;
// canceled or no result
if(resEntity == null)
return null;
return new HTTPResponseResult(resEntity, httpClient);
}
/**

@ -4,7 +4,7 @@
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.impl.gui.customcontrols;
package net.java.sip.communicator.util.swing;
import java.awt.*;
import java.awt.event.*;
@ -13,13 +13,8 @@
import javax.swing.*;
import javax.swing.event.*;
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.resources.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.util.skin.*;
import net.java.sip.communicator.util.swing.*;
/**
* Implements a <tt>JDialog</tt> which displays an error message and,
@ -47,11 +42,11 @@ public class ErrorDialog
private JButton okButton
= new JButton(
GuiActivator.getResources().getI18NString("service.gui.OK"));
UtilActivator.getResources().getI18NString("service.gui.OK"));
private JLabel iconLabel
= new JLabel(
new ImageIcon(ImageLoader.getImage(ImageLoader.ERROR_ICON)));
= new JLabel(new ImageIcon(
UtilActivator.getImage("service.gui.icons.ERROR_ICON")));
private StyledHTMLEditorPane htmlMsgEditorPane = new StyledHTMLEditorPane();
@ -121,8 +116,8 @@ public ErrorDialog( Frame owner,
this.mainPanel.setBorder(
BorderFactory.createEmptyBorder(20, 20, 10, 20));
this.stackTraceScrollPane.setBorder(
new SIPCommBorders.BoldRoundBorder());
this.stackTraceScrollPane.setBorder(BorderFactory.createLineBorder(
iconLabel.getForeground()));
this.stackTraceScrollPane.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
@ -226,8 +221,8 @@ public ErrorDialog( Frame owner,
if(type == WARNING)
{
iconLabel.setIcon(new ImageIcon(ImageLoader
.getImage(ImageLoader.WARNING_ICON)));
iconLabel.setIcon(new ImageIcon(
UtilActivator.getImage("service.gui.icons.WARNING_ICON")));
this.type = type;
}
}
@ -354,11 +349,11 @@ public void hyperlinkUpdate(HyperlinkEvent e)
*/
public void loadSkin()
{
ImageID icon
String icon
= (type == WARNING)
? ImageLoader.WARNING_ICON
: ImageLoader.ERROR_ICON;
? "service.gui.icons.WARNING_ICON"
: "service.gui.icons.ERROR_ICON";
iconLabel.setIcon(new ImageIcon(ImageLoader.getImage(icon)));
iconLabel.setIcon(new ImageIcon(UtilActivator.getImage(icon)));
}
}
Loading…
Cancel
Save