- Timestamp:
- 2015-12-31T03:24:56+01:00 (9 years ago)
- Location:
- trunk/src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/oauth/signpost/AbstractOAuthProvider.java
r6849 r9227 12 12 13 13 import java.io.BufferedReader; 14 import java.io.InputStream; 14 15 import java.io.InputStreamReader; 15 16 import java.util.HashMap; … … 28 29 * you will probably inherit from this class, since it takes a lot of work from 29 30 * you. 30 * 31 * 31 32 * @author Matthias Kaeppler 32 33 */ … … 128 129 * </ul> 129 130 * </p> 130 * 131 * 131 132 * @param consumer 132 133 * the {@link OAuthConsumer} that should be used to sign the request … … 168 169 consumer.setAdditionalParameters(customOAuthParams); 169 170 } 170 171 171 172 if (this.listener != null) { 172 173 this.listener.prepareRequest(request); … … 174 175 175 176 consumer.sign(request); 176 177 177 178 if (this.listener != null) { 178 179 this.listener.prepareSubmission(request); … … 230 231 return; 231 232 } 232 BufferedReader reader = new BufferedReader(new InputStreamReader(response.getContent()));233 233 StringBuilder responseBody = new StringBuilder(); 234 235 String line = reader.readLine(); 236 while (line != null) { 237 responseBody.append(line); 238 line = reader.readLine(); 234 InputStream content = response.getContent(); 235 if (content != null) { 236 BufferedReader reader = new BufferedReader(new InputStreamReader(content)); 237 238 String line = reader.readLine(); 239 while (line != null) { 240 responseBody.append(line); 241 line = reader.readLine(); 242 } 239 243 } 240 244 … … 251 255 * Overrride this method if you want to customize the logic for building a 252 256 * request object for the given endpoint URL. 253 * 257 * 254 258 * @param endpointUrl 255 259 * the URL to which the request will go … … 263 267 * Override this method if you want to customize the logic for how the given 264 268 * request is sent to the server. 265 * 269 * 266 270 * @param request 267 271 * the request to send … … 275 279 * Called when the connection is being finalized after receiving the 276 280 * response. Use this to do any cleanup / resource freeing. 277 * 281 * 278 282 * @param request 279 283 * the request that has been sent … … 295 299 * token reply. You must call {@link #setResponseParameters} with the set of 296 300 * parameters before using this method. 297 * 301 * 298 302 * @param key 299 303 * the parameter name -
trunk/src/org/openstreetmap/josm/gui/oauth/OsmLoginFailedException.java
r8510 r9227 2 2 package org.openstreetmap.josm.gui.oauth; 3 3 4 /** 5 * OSM login failure exception. 6 * @since 2746 7 */ 4 8 public class OsmLoginFailedException extends OsmOAuthAuthorizationException { 5 9 6 public OsmLoginFailedException() { 7 super(); 8 } 9 10 public OsmLoginFailedException(String arg0, Throwable arg1) { 11 super(arg0, arg1); 12 } 13 14 public OsmLoginFailedException(String arg0) { 15 super(arg0); 16 } 17 18 public OsmLoginFailedException(Throwable arg0) { 19 super(arg0); 10 /** 11 * Constructs a new {@code OsmLoginFailedException} with the specified cause. 12 * @param cause the cause (which is saved for later retrieval by the {@link #getCause()} method). 13 */ 14 public OsmLoginFailedException(Throwable cause) { 15 super(cause); 20 16 } 21 17 } -
trunk/src/org/openstreetmap/josm/gui/oauth/OsmOAuthAuthorizationClient.java
r9172 r9227 50 50 private String token; 51 51 private String userName; 52 }53 54 /**55 * Creates a new authorisation client with default OAuth parameters56 *57 */58 public OsmOAuthAuthorizationClient() {59 oauthProviderParameters = OAuthParameters.createDefault(Main.pref.get("osm-server.url"));60 consumer = oauthProviderParameters.buildConsumer();61 provider = oauthProviderParameters.buildProvider(consumer);62 52 } 63 53 … … 241 231 } 242 232 243 protected String buildPostRequest(Map<String, String> parameters) throws OsmOAuthAuthorizationException{233 protected static String buildPostRequest(Map<String, String> parameters) { 244 234 StringBuilder sb = new StringBuilder(32); 245 235 … … 322 312 * Submits a request to the OSM website for a OAuth form. The OSM website replies a session token in 323 313 * a hidden parameter. 314 * @param sessionId session id 315 * @param requestToken request token 324 316 * 325 317 * @throws OsmOAuthAuthorizationException if something went wrong -
trunk/src/org/openstreetmap/josm/gui/oauth/OsmOAuthAuthorizationException.java
r3083 r9227 2 2 package org.openstreetmap.josm.gui.oauth; 3 3 4 /** 5 * OSM OAuth authorization exception. 6 * @since 2746 7 */ 4 8 public class OsmOAuthAuthorizationException extends Exception { 5 9 6 public OsmOAuthAuthorizationException() { 7 super(); 10 /** 11 * Constructs a new {@code OsmLoginFailedException} with the specified detail message. 12 * @param message the detail message. The detail message is saved for later retrieval by the {@link #getMessage()} method. 13 */ 14 public OsmOAuthAuthorizationException(String message) { 15 super(message); 8 16 } 9 17 10 public OsmOAuthAuthorizationException(String arg0, Throwable arg1) { 11 super(arg0, arg1); 12 } 13 14 public OsmOAuthAuthorizationException(String arg0) { 15 super(arg0); 16 } 17 18 public OsmOAuthAuthorizationException(Throwable arg0) { 19 super(arg0); 18 /** 19 * Constructs a new {@code OsmLoginFailedException} with the specified cause. 20 * @param cause the cause (which is saved for later retrieval by the {@link #getCause()} method). 21 */ 22 public OsmOAuthAuthorizationException(Throwable cause) { 23 super(cause); 20 24 } 21 25 } -
trunk/src/org/openstreetmap/josm/io/ProgressInputStream.java
r9185 r9227 10 10 import org.openstreetmap.josm.gui.progress.NullProgressMonitor; 11 11 import org.openstreetmap.josm.gui.progress.ProgressMonitor; 12 import org.openstreetmap.josm.tools.CheckParameterUtil; 12 13 13 14 /** … … 23 24 * Constructs a new {@code ProgressInputStream}. 24 25 * 25 * @param in the stream to monitor 26 * @param in the stream to monitor. Must not be null 26 27 * @param size the total size which will be sent 27 28 * @param progressMonitor the monitor to report to … … 29 30 */ 30 31 public ProgressInputStream(InputStream in, long size, ProgressMonitor progressMonitor) { 32 CheckParameterUtil.ensureParameterNotNull(in, "in"); 31 33 if (progressMonitor == null) { 32 34 progressMonitor = NullProgressMonitor.INSTANCE; … … 43 45 * @param con the connection to monitor 44 46 * @param progressMonitor the monitor to report to 47 * @throws OsmTransferException if any I/O error occurs 45 48 */ 46 49 public ProgressInputStream(URLConnection con, ProgressMonitor progressMonitor) throws OsmTransferException { -
trunk/src/org/openstreetmap/josm/tools/HttpClient.java
r9200 r9227 231 231 * @see HttpURLConnection#getErrorStream() 232 232 */ 233 @SuppressWarnings("resource") 233 234 public InputStream getContent() throws IOException { 234 235 InputStream in; … … 238 239 in = connection.getErrorStream(); 239 240 } 240 in = new ProgressInputStream(in, getContentLength(), monitor); 241 in = "gzip".equalsIgnoreCase(getContentEncoding()) ? new GZIPInputStream(in) : in; 242 Compression compression = Compression.NONE; 243 if (uncompress) { 244 final String contentType = getContentType(); 245 Main.debug("Uncompressing input stream according to Content-Type header: {0}", contentType); 246 compression = Compression.forContentType(contentType); 247 } 248 if (uncompressAccordingToContentDisposition && Compression.NONE.equals(compression)) { 249 final String contentDisposition = getHeaderField("Content-Disposition"); 250 final Matcher matcher = Pattern.compile("filename=\"([^\"]+)\"").matcher(contentDisposition); 251 if (matcher.find()) { 252 Main.debug("Uncompressing input stream according to Content-Disposition header: {0}", contentDisposition); 253 compression = Compression.byExtension(matcher.group(1)); 241 if (in != null) { 242 in = new ProgressInputStream(in, getContentLength(), monitor); 243 in = "gzip".equalsIgnoreCase(getContentEncoding()) ? new GZIPInputStream(in) : in; 244 Compression compression = Compression.NONE; 245 if (uncompress) { 246 final String contentType = getContentType(); 247 Main.debug("Uncompressing input stream according to Content-Type header: {0}", contentType); 248 compression = Compression.forContentType(contentType); 254 249 } 255 } 256 in = compression.getUncompressedInputStream(in); 250 if (uncompressAccordingToContentDisposition && Compression.NONE.equals(compression)) { 251 final String contentDisposition = getHeaderField("Content-Disposition"); 252 final Matcher matcher = Pattern.compile("filename=\"([^\"]+)\"").matcher(contentDisposition); 253 if (matcher.find()) { 254 Main.debug("Uncompressing input stream according to Content-Disposition header: {0}", contentDisposition); 255 compression = Compression.byExtension(matcher.group(1)); 256 } 257 } 258 in = compression.getUncompressedInputStream(in); 259 } 257 260 return in; 258 261 }
Note:
See TracChangeset
for help on using the changeset viewer.