Changeset 3069 in josm


Ignore:
Timestamp:
Mar 2, 2010 5:16:24 PM (3 years ago)
Author:
Gubaer
Message:

see #4588: Open Location (Ctrl+L) should cope with certain URLs that don't lead to xml data

Location:
trunk/src/org/openstreetmap/josm
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/ExceptionDialogUtil.java

    r2984 r3069  
    1515import org.openstreetmap.josm.Main; 
    1616import org.openstreetmap.josm.io.ChangesetClosedException; 
     17import org.openstreetmap.josm.io.IllegalDataException; 
    1718import org.openstreetmap.josm.io.MissingOAuthAccessTokenException; 
    1819import org.openstreetmap.josm.io.OsmApiException; 
     
    140141                JOptionPane.ERROR_MESSAGE, 
    141142                ht("/ErrorMessages#NestedIOException") 
     143        ); 
     144    } 
     145 
     146    /** 
     147     * Explains a {@see IllegalDataException} which has caused an {@see OsmTransferException}. 
     148     * This is most likely happening when JOSM tries to load data in in an unsupported format. 
     149     * 
     150     * @param e the exception 
     151     */ 
     152 
     153    public static void explainNestedIllegalDataException(OsmTransferException e) { 
     154        HelpAwareOptionPane.showOptionDialog( 
     155                Main.parent, 
     156                ExceptionUtil.explainNestedIllegalDataException(e), 
     157                tr("Illegal Data"), 
     158                JOptionPane.ERROR_MESSAGE, 
     159                ht("/ErrorMessages#IllegalDataException") 
    142160        ); 
    143161    } 
     
    341359            return; 
    342360        } 
     361        if (getNestedException(e, IllegalDataException.class) != null) { 
     362            explainNestedIllegalDataException(e); 
     363            return; 
     364        } 
    343365        if (e instanceof OsmApiInitializationException) { 
    344366            explainOsmApiInitializationException((OsmApiInitializationException) e); 
  • trunk/src/org/openstreetmap/josm/tools/ExceptionUtil.java

    r3023 r3069  
    2121import org.openstreetmap.josm.gui.preferences.server.OAuthAccessTokenHolder; 
    2222import org.openstreetmap.josm.io.ChangesetClosedException; 
     23import org.openstreetmap.josm.io.IllegalDataException; 
    2324import org.openstreetmap.josm.io.MissingOAuthAccessTokenException; 
    2425import org.openstreetmap.josm.io.OsmApi; 
     
    283284 
    284285    /** 
     286     * Explains a {@see IllegalDataException} which has caused an {@see OsmTransferException}. 
     287     * This is most likely happening when JOSM tries to load data in in an unsupported format. 
     288     * 
     289     * @param e the exception 
     290     */ 
     291    public static String explainNestedIllegalDataException(OsmTransferException e) { 
     292        IllegalDataException ide = getNestedException(e, IllegalDataException.class); 
     293        String message = tr("<html>Failed to download data." 
     294                + "Its format is either unsupported, ill-formed, and/or inconsistent.<br>" 
     295                + "<br>Details(untranslated): {0}</html>", ide.getMessage()); 
     296        e.printStackTrace(); 
     297        return message; 
     298    } 
     299 
     300    /** 
    285301     * Explains a {@see OsmApiException} which was thrown because of an internal server 
    286302     * error in the OSM API server.. 
     
    306322        String apiUrl = OsmApi.getOsmApi().getBaseUrl(); 
    307323        String message = tr("The OSM server ''{0}'' reported a bad request.<br>", apiUrl); 
    308         if (e.getErrorHeader() != null &&  
    309                 (e.getErrorHeader().startsWith("The maximum bbox") ||  
    310                 e.getErrorHeader().startsWith("You requested too many nodes"))) { 
     324        if (e.getErrorHeader() != null && 
     325                (e.getErrorHeader().startsWith("The maximum bbox") || 
     326                        e.getErrorHeader().startsWith("You requested too many nodes"))) { 
    311327            message += "<br>" 
    312328                + tr("The area you tried to download is too big or your request was too large." 
Note: See TracChangeset for help on using the changeset viewer.