425 Commits

Author SHA1 Message Date
Andy Wilkinson
384cfd2ad8 Preserve ref and query when creating URL in loader's handler
Closes gh-14011
2018-08-13 11:30:15 +01:00
Johnny Lim
af2db82b22 Invoke Inflater.end() in ZipInflaterInputStream.close()
Closes gh-14001
2018-08-08 14:45:59 +02:00
Spring Buildmaster
73bf744cb0 Next Development Version 2018-07-30 13:37:38 +00:00
Spring Buildmaster
36b8639853 Next Development Version 2018-06-14 10:05:31 +00:00
Phillip Webb
bb0550ab95 Polish 2018-05-30 20:28:50 -07:00
Phillip Webb
55d0611bc3 Guard against JarURLConnection with wrong JAR
Update `JarURLConnection.get()` to guard against the wrong nested JAR
being used as context.

Closes gh-11367
2018-05-30 19:59:56 -07:00
Spring Buildmaster
010b4fccbd Next development version 2018-05-09 09:31:46 +00:00
Phillip Webb
99dad81e9a Update copyright header year for changed files 2018-05-04 12:15:13 -07:00
Phillip Webb
0a0247975c Formatting 2018-05-04 12:00:50 -07:00
Phillip Webb
3ee777e142 Polish ternary expressions
Consistently format ternary expressions and always favor `!=` as the
the check.
2018-05-03 09:46:15 -07:00
Spring Buildmaster
c10aad165f Next Development Version 2018-04-09 23:14:33 +00:00
Spring Buildmaster
ade4760842 Next Development Version 2018-04-05 09:01:52 +00:00
Phillip Webb
624a5f8260 Apply URL decoding for nested jar entry names
Update `JarURLConnection` to apply URL decoding to nested jar entry
names.

Fixes gh-12765
2018-04-04 14:49:06 -07:00
Phillip Webb
a8f366a554 Fix copyright header for edited files 2018-03-16 15:07:23 -07:00
Phillip Webb
e975dbe3f0 Only use jar shortcut for matching URLs
Update JAR `Handler` logic so that the existing `jarFile` is only used
if the requested URL starts with the same path. Prior to this commit it
was possible to construct a URL with another URL as context. This could
mean that the `handler` was shared and the already resolved `jarFile`
contained in the handler wasn't necessarily suitable.

Fixes gh-12483
2018-03-16 11:56:34 -07:00
Andy Wilkinson
eee891dbc8 Decode file: URLs passed into PropertiesLauncher via loader.path
Closes gh-12325
2018-03-05 11:52:25 +00:00
Stephane Nicoll
b4a7e1d64b Use toLowerCase() and toUpperCase() with Locale.ENGLISH
This commit updates all `toLowerCase()` and `toUpperCase` invocations to
use the variant that takes a `Locale` to avoid locale-specific side
effect.

Closes gh-12213
2018-02-26 17:49:03 +01:00
Andy Wilkinson
915eaf3447 Polish 2018-02-23 17:30:10 +00:00
Andy Wilkinson
746cc0f70b Make JarFile.size() return the number of entries in the jar
Closes gh-12195
2018-02-23 17:09:21 +00:00
Phillip Webb
798522d890 Format with Eclipse Oxygen SR2 2018-02-08 15:46:49 -08:00
Spring Buildmaster
6414b42335 Next Development Version 2018-01-30 23:29:33 +00:00
Stephane Nicoll
397d3e85e8 Fix Windows build
Closes gh-11459
2018-01-02 15:45:43 +01:00
Douglas Cardoso
feecc27677 Log inaccessible file in RandomAccessDataFile
Closes gh-11401
2017-12-28 11:25:51 +01:00
dreis2211
d5370e6852 Precompile current dir pattern in Handler
Closes gh-11321
2017-12-12 12:54:01 +00:00
dreis2211
37437a0fe2 Avoid allocations from lower-casing spec in JAR Handler
Closes gh-11314
2017-12-11 23:34:18 +01:00
Andy Wilkinson
a491727b7c Avoid creating unnecessary garbage during URL normalization
Closes gh-11207
2017-11-29 20:33:02 +00:00
Spring Buildmaster
df2ae7aa19 Next Development Version 2017-11-28 09:55:46 +00:00
Johnny Lim
4979af9fa5 Remove unnecessary assignments
Closes gh-10805
2017-10-29 14:07:00 +01:00
Spring Buildmaster
c0f9f64776 Next Development Version 2017-10-16 12:36:43 +00:00
Spring Buildmaster
30eb937a83 Next Development Version 2017-09-12 10:54:22 +00:00
Andy Wilkinson
7a87c69dd0 Normalize spec when creating jar URL by removing /../ and /./
Previously when Handler was creating a URL from a context URL and a
spec, any occurrances of /../ or /./ in the spec would be left as-is.
This differed from the JDK's Handler implementation which normalizes
the URL by modifying the path to remove any occurrences of /../ or
/./

This commit updates our Handler implementation to align it with the
JDK's. Tests have been added to assert that, given the same inputs,
the two Handler classes produce the same output.

Closes gh-9917
2017-08-03 19:48:58 +01:00
Andy Wilkinson
b7ac5f2eb2 Polish "Make JarURLConnection return entry's last modified time"
Closes gh-9893
2017-07-28 15:41:34 +01:00
rostislav.dudka
7c7259beec Make JarURLConnection return entry's last modified time
See gh-9893
2017-07-28 15:41:29 +01:00
Spring Buildmaster
17a5bb0be4 Next development version 2017-07-27 08:00:21 +00:00
Spring Buildmaster
41c5c0e7c9 Next development version 2017-07-26 08:30:55 +00:00
Phillip Webb
28dad44e2d Be defensive about JUL calls from JAR Handler
Update nested JAR support to only obtain JUL loggers when absolutely
necessary and to defensively deal with failures.

Prior to this commit it was not possible to override
`java.util.logging.manager` to use a nested JAR as the logger
implementation.

Fixes gh-9848
2017-07-24 12:54:24 -07:00
Phillip Webb
aa57ca7e18 Polish 2017-07-06 16:53:04 -07:00
Andy Wilkinson
2d3bcae4e1 Make JarURLConnection return entry's length from getContentLengthLong()
Closes gh-9484
2017-06-12 13:46:59 +01:00
Spring Buildmaster
05d4d0281c Next Development Version 2017-06-08 12:47:16 +00:00
Andy Wilkinson
5c708ae712 Merge branch '1.4.x' into 1.5.x 2017-06-01 11:04:23 +01:00
Andy Wilkinson
5b4f9edc86 Restore original TCCL in PropertiesLauncherTests
Calling launch of PropertiesLauncherTests sets the thread context
class loader to an instance of LaunchedURLClassLoader. To avoid this
class loader being used beyond the scope of the test and launcher
that created it, this commit updates PropertiesLauncherTests to
capture the TCCL before each test and restore it after each test.

Closes gh-9378
2017-06-01 10:58:00 +01:00
Andy Wilkinson
c22230a418 Try making FilePool static to fix the Mockito problem on Bamboo 2017-05-31 23:24:03 +01:00
Andy Wilkinson
e11b7aff08 Ensure that file is released back to pool when seek fails
Closes gh-9370
2017-05-31 21:50:05 +01:00
Andy Wilkinson
f7127e5522 Ensure that closing a JarFile closes all underlying resources
Closes gh-8871
2017-05-23 20:42:59 +01:00
Stephane Nicoll
f8e1345b75 Unify versions used in integration tests
This commit makes sure the integration tests use the same versions as
the one managed by `spring-boot-dependencies` (including Maven plugins).

Closes gh-8947
2017-05-09 09:36:21 +02:00
Spring Buildmaster
9768b0a8c2 Next Development Version 2017-04-21 08:32:01 +00:00
Spring Buildmaster
d719d2cbbc Next Development Version 2017-04-20 12:46:19 +00:00
Dave Syer
14638e67bc Extended PropertiesLauncher class location logic
Update `PropertiesLauncher` so that classes can be loaded outside of
`BOOT-INF/classes`. You can use a subdirectory, or the root directory
of an external jar (but not the parent archive to avoid issues
with agents and awkward delegation models).

Fixes gh-8480
Closes gh-8486
2017-04-19 22:18:12 -07:00
Phillip Webb
ad38776de3 Polish 2017-04-04 09:48:10 -07:00
Phillip Webb
ddcb5ee328 Polish 2017-04-04 09:36:27 -07:00