File tree Expand file tree Collapse file tree 2 files changed +15
-16
lines changed Expand file tree Collapse file tree 2 files changed +15
-16
lines changed Original file line number Diff line number Diff line change @@ -116,20 +116,6 @@ sealed trait MediumPriorityResourceImplicits extends LowPriorityResourceImplicit
116116 override def close (r : A ) = r.close()
117117 override def toString = " Resource[javax.sql.PooledConnection]"
118118 }
119-
120- // GZIP must be "finished" when done.
121- @ deprecated(" Use `gzipOuputStreamResource`" , " 3.0" )
122- object gzipOuputStraemResource extends Resource [GZIPOutputStream ] {
123- override def close (r : GZIPOutputStream ): Unit = r.finish()
124- override def toString = " Resource[GZIPOutputStream]"
125- }
126-
127- // GZIP must be "finished" when done.
128- implicit object gzipOuputStreamResource extends Resource [GZIPOutputStream ] {
129- override def close (r : GZIPOutputStream ): Unit = r.finish()
130- override def toString = " Resource[GZIPOutputStream]"
131- }
132-
133119 // JarFile does not extends java.io.Closeable on all JDKs.
134120 implicit object jarFileResource extends Resource [JarFile ] {
135121 override def close (r : JarFile ): Unit = r.close()
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ package resource
22
33import java .io ._
44import java .nio .charset .Charset
5- import java .util .zip .{GZIPInputStream , GZIPOutputStream }
5+ import java .util .zip .{DeflaterOutputStream , GZIPInputStream , GZIPOutputStream }
66
77import org .junit .Test
88import org .junit .Assert ._
@@ -85,4 +85,17 @@ class TestUsing {
8585 val result = new String (buf)
8686 assertEquals(" Failed to successfully read from gzip" , expected, result)
8787 }
88- }
88+
89+ @ Test
90+ def testGzipClose (): Unit = {
91+ val l = new GZIPOutputStream (new ByteArrayOutputStream ())
92+ managed(l).acquireFor { _ => }
93+ assertTrue(" GZIPOutputStream was closed after write" , streamClosed(l))
94+ }
95+
96+ def streamClosed (gzipOut : DeflaterOutputStream ): Boolean = {
97+ val privateField = classOf [DeflaterOutputStream ].getDeclaredField(" closed" )
98+ privateField.setAccessible(true )
99+ privateField.get(gzipOut).asInstanceOf [Boolean ]
100+ }
101+ }
You can’t perform that action at this time.
0 commit comments