From be6a9822e38885104f335556582c40e09e9d9d41 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Fri, 13 Apr 2018 16:53:00 +0200 Subject: [PATCH] =?UTF-8?q?StateMap=20=E2=80=94=20use=20LZ4=20instead=20of?= =?UTF-8?q?=20snappy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../intellij.platform.configurationStore.impl.iml | 1 + platform/configuration-store-impl/src/StateMap.kt | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/platform/configuration-store-impl/intellij.platform.configurationStore.impl.iml b/platform/configuration-store-impl/intellij.platform.configurationStore.impl.iml index dff8522ccef4..dcd0f841392f 100644 --- a/platform/configuration-store-impl/intellij.platform.configurationStore.impl.iml +++ b/platform/configuration-store-impl/intellij.platform.configurationStore.impl.iml @@ -20,5 +20,6 @@ + \ No newline at end of file diff --git a/platform/configuration-store-impl/src/StateMap.kt b/platform/configuration-store-impl/src/StateMap.kt index 64ee82d9ad5d..93fbbde43d20 100644 --- a/platform/configuration-store-impl/src/StateMap.kt +++ b/platform/configuration-store-impl/src/StateMap.kt @@ -9,8 +9,8 @@ import com.intellij.util.ArrayUtil import com.intellij.util.SystemProperties import com.intellij.util.isEmpty import gnu.trove.THashMap -import org.iq80.snappy.SnappyFramedInputStream -import org.iq80.snappy.SnappyFramedOutputStream +import net.jpountz.lz4.LZ4BlockInputStream +import net.jpountz.lz4.LZ4BlockOutputStream import org.jdom.Element import java.io.ByteArrayInputStream import java.util.* @@ -18,13 +18,13 @@ import java.util.concurrent.atomic.AtomicReferenceArray fun archiveState(state: Element): BufferExposingByteArrayOutputStream { val byteOut = BufferExposingByteArrayOutputStream() - SnappyFramedOutputStream(byteOut).use { + LZ4BlockOutputStream(byteOut).use { serializeElementToBinary(state, it) } return byteOut } -private fun unarchiveState(state: ByteArray) = SnappyFramedInputStream(ByteArrayInputStream(state), false).use { deserializeElementFromBinary(it) } +private fun unarchiveState(state: ByteArray) = LZ4BlockInputStream(ByteArrayInputStream(state)).use { deserializeElementFromBinary(it) } fun getNewByteIfDiffers(key: String, newState: Any, oldState: ByteArray): ByteArray? { val newBytes: ByteArray