Module: ActiveSupport::Cache::SerializerWithFallback::Marshal70WithFallback
Relationships & Source Files | |
Defined in: | activesupport/lib/active_support/cache/serializer_with_fallback.rb |
Constant Summary
-
MARK_COMPRESSED =
# File 'activesupport/lib/active_support/cache/serializer_with_fallback.rb', line 71"\x01".b.freeze
-
MARK_UNCOMPRESSED =
# File 'activesupport/lib/active_support/cache/serializer_with_fallback.rb', line 70"\x00".b.freeze
Instance Method Summary
Instance Method Details
#_load(marked)
[ GitHub ]# File 'activesupport/lib/active_support/cache/serializer_with_fallback.rb', line 88
def _load(marked) dumped = marked.byteslice(1..-1) dumped = Zlib::Inflate.inflate(dumped) if marked.start_with?(MARK_COMPRESSED) Cache::Entry.unpack(marshal_load(dumped)) end
#dump(entry)
[ GitHub ]# File 'activesupport/lib/active_support/cache/serializer_with_fallback.rb', line 73
def dump(entry) MARK_UNCOMPRESSED + Marshal.dump(entry.pack) end
#dump_compressed(entry, threshold)
[ GitHub ]# File 'activesupport/lib/active_support/cache/serializer_with_fallback.rb', line 77
def dump_compressed(entry, threshold) dumped = Marshal.dump(entry.pack) if dumped.bytesize >= threshold compressed = Zlib::Deflate.deflate(dumped) return MARK_COMPRESSED + compressed if compressed.bytesize < dumped.bytesize end MARK_UNCOMPRESSED + dumped end
#dumped?(dumped) ⇒ Boolean
# File 'activesupport/lib/active_support/cache/serializer_with_fallback.rb', line 94
def dumped?(dumped) dumped.start_with?(MARK_UNCOMPRESSED, MARK_COMPRESSED) end