From 4e81207eacdbb0e24d742e2483805b995d1d1601 Mon Sep 17 00:00:00 2001 From: adamw Date: Fri, 27 Dec 2024 19:23:05 +0100 Subject: [PATCH] Move compression package --- .../client4/{internal => }/compression/Compressor.scala | 8 ++++---- .../compression/GZIPCompressingInputStream.scala | 4 ++-- .../httpurlconnection/HttpURLConnectionBackend.scala | 2 +- .../compression/GZIPCompressingInputStreamTest.scala | 1 + .../client4/httpclient/fs2/HttpClientFs2Backend.scala | 2 +- .../httpclient/fs2/compression/fs2Compressor.scala | 2 +- 6 files changed, 10 insertions(+), 9 deletions(-) rename core/src/main/scala/sttp/client4/{internal => }/compression/Compressor.scala (95%) rename core/src/main/scala/sttp/client4/{internal => }/compression/GZIPCompressingInputStream.scala (97%) diff --git a/core/src/main/scala/sttp/client4/internal/compression/Compressor.scala b/core/src/main/scala/sttp/client4/compression/Compressor.scala similarity index 95% rename from core/src/main/scala/sttp/client4/internal/compression/Compressor.scala rename to core/src/main/scala/sttp/client4/compression/Compressor.scala index 09b27548e..837633287 100644 --- a/core/src/main/scala/sttp/client4/internal/compression/Compressor.scala +++ b/core/src/main/scala/sttp/client4/compression/Compressor.scala @@ -1,4 +1,4 @@ -package sttp.client4.internal.compression +package sttp.client4.compression import sttp.client4._ import sttp.model.Encodings @@ -10,12 +10,12 @@ import java.util.zip.DeflaterInputStream import java.util.zip.Deflater import java.io.ByteArrayOutputStream -private[client4] trait Compressor[R] { +trait Compressor[R] { def encoding: String def apply(body: GenericRequestBody[R], encoding: String): GenericRequestBody[R] } -private[client4] class GZipDefaultCompressor[R] extends Compressor[R] { +class GZipDefaultCompressor[R] extends Compressor[R] { val encoding: String = Encodings.Gzip def apply(body: GenericRequestBody[R], encoding: String): GenericRequestBody[R] = @@ -44,7 +44,7 @@ private[client4] class GZipDefaultCompressor[R] extends Compressor[R] { } } -private[client4] class DeflateDefaultCompressor[R] extends Compressor[R] { +class DeflateDefaultCompressor[R] extends Compressor[R] { val encoding: String = Encodings.Deflate def apply(body: GenericRequestBody[R], encoding: String): GenericRequestBody[R] = diff --git a/core/src/main/scala/sttp/client4/internal/compression/GZIPCompressingInputStream.scala b/core/src/main/scala/sttp/client4/compression/GZIPCompressingInputStream.scala similarity index 97% rename from core/src/main/scala/sttp/client4/internal/compression/GZIPCompressingInputStream.scala rename to core/src/main/scala/sttp/client4/compression/GZIPCompressingInputStream.scala index 086f74fb3..10ef537f9 100644 --- a/core/src/main/scala/sttp/client4/internal/compression/GZIPCompressingInputStream.scala +++ b/core/src/main/scala/sttp/client4/compression/GZIPCompressingInputStream.scala @@ -1,4 +1,4 @@ -package sttp.client4.internal.compression +package sttp.client4.compression import java.io.{ByteArrayInputStream, IOException, InputStream} import java.util.zip.{CRC32, Deflater} @@ -6,7 +6,7 @@ import java.util.zip.{CRC32, Deflater} // based on: // https://github.com/http4k/http4k/blob/master/core/core/src/main/kotlin/org/http4k/filter/Gzip.kt#L124 // https://stackoverflow.com/questions/11036280/compress-an-inputstream-with-gzip -private[client4] class GZIPCompressingInputStream( +class GZIPCompressingInputStream( source: InputStream, compressionLevel: Int = java.util.zip.Deflater.DEFAULT_COMPRESSION ) extends InputStream { diff --git a/core/src/main/scalajvm/sttp/client4/httpurlconnection/HttpURLConnectionBackend.scala b/core/src/main/scalajvm/sttp/client4/httpurlconnection/HttpURLConnectionBackend.scala index 8d1ea9e7b..69d3849ea 100644 --- a/core/src/main/scalajvm/sttp/client4/httpurlconnection/HttpURLConnectionBackend.scala +++ b/core/src/main/scalajvm/sttp/client4/httpurlconnection/HttpURLConnectionBackend.scala @@ -3,7 +3,7 @@ package sttp.client4.httpurlconnection import sttp.capabilities.Effect import sttp.client4.httpurlconnection.HttpURLConnectionBackend.EncodingHandler import sttp.client4.internal._ -import sttp.client4.internal.compression.{Compressor, DeflateDefaultCompressor, GZipDefaultCompressor} +import sttp.client4.compression.{Compressor, DeflateDefaultCompressor, GZipDefaultCompressor} import sttp.client4.testing.SyncBackendStub import sttp.client4.ws.{GotAWebSocketException, NotAWebSocketException} import sttp.client4.{ diff --git a/core/src/test/scala/sttp/client4/internal/compression/GZIPCompressingInputStreamTest.scala b/core/src/test/scala/sttp/client4/internal/compression/GZIPCompressingInputStreamTest.scala index acb094ad9..8acef274f 100644 --- a/core/src/test/scala/sttp/client4/internal/compression/GZIPCompressingInputStreamTest.scala +++ b/core/src/test/scala/sttp/client4/internal/compression/GZIPCompressingInputStreamTest.scala @@ -6,6 +6,7 @@ import org.scalatestplus.scalacheck.ScalaCheckPropertyChecks import java.io.ByteArrayInputStream import java.util.zip.GZIPInputStream +import sttp.client4.compression.GZIPCompressingInputStream class GZIPCompressingInputStreamTest extends AnyFlatSpec with Matchers with ScalaCheckPropertyChecks { implicit override val generatorDrivenConfig = diff --git a/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/HttpClientFs2Backend.scala b/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/HttpClientFs2Backend.scala index 546511c62..3f1d572c2 100644 --- a/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/HttpClientFs2Backend.scala +++ b/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/HttpClientFs2Backend.scala @@ -28,7 +28,7 @@ import java.net.http.HttpResponse.BodyHandlers import java.util.concurrent.Flow.Publisher import java.{util => ju} import scala.collection.JavaConverters._ -import sttp.client4.internal.compression.Compressor +import sttp.client4.compression.Compressor import sttp.client4.httpclient.fs2.compression.{DeflateFs2Compressor, GZipFs2Compressor} class HttpClientFs2Backend[F[_]: Async] private ( diff --git a/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/compression/fs2Compressor.scala b/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/compression/fs2Compressor.scala index 0db3458fa..df65c17fd 100644 --- a/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/compression/fs2Compressor.scala +++ b/effects/fs2/src/main/scalajvm/sttp/client4/httpclient/fs2/compression/fs2Compressor.scala @@ -1,7 +1,6 @@ package sttp.client4.httpclient.fs2.compression import sttp.client4._ -import sttp.client4.internal.compression._ import sttp.client4.GenericRequestBody import fs2._ import fs2.compression.Compression @@ -10,6 +9,7 @@ import fs2.io.file.Files import cats.effect.Sync import sttp.capabilities.fs2.Fs2Streams import fs2.compression.DeflateParams +import sttp.client4.compression.{Compressor, DeflateDefaultCompressor, GZipDefaultCompressor} trait Fs2Compressor[F[_], R <: Fs2Streams[F]] extends Compressor[R] { protected val fSync: Sync[F]