Skip to content

Commit

Permalink
refactor(result): createJsResultObject helper
Browse files Browse the repository at this point in the history
  • Loading branch information
mateoguzmana committed Sep 29, 2024
1 parent 2ff1e6c commit 7cf6b47
Showing 1 changed file with 14 additions and 14 deletions.
28 changes: 14 additions & 14 deletions cpp/react-native-lz4.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,18 @@ bool createDirectory(const std::string &path)
return true;
}

// Helper function to create a jsi::Object from FileOperationResult
jsi::Object createJsResultObject(jsi::Runtime &runtime, const FileOperationResult &fileOperationResult)
{
jsi::Object result = jsi::Object(runtime);
result.setProperty(runtime, "success", jsi::Value(fileOperationResult.success));
result.setProperty(runtime, "message", jsi::String::createFromUtf8(runtime, fileOperationResult.message));
result.setProperty(runtime, "originalSize", jsi::Value(static_cast<double>(fileOperationResult.originalSize)));
result.setProperty(runtime, "finalSize", jsi::Value(static_cast<double>(fileOperationResult.finalSize)));

return result;
}

namespace lz4
{
int getLz4VersionNumber()
Expand Down Expand Up @@ -309,13 +321,7 @@ namespace lz4

FileOperationResult fileOperationResult = lz4::compressFile(sourcePath, destinationPath);

jsi::Object result = jsi::Object(runtime);
result.setProperty(runtime, "success", jsi::Value(fileOperationResult.success));
result.setProperty(runtime, "message", jsi::String::createFromUtf8(runtime, fileOperationResult.message));
result.setProperty(runtime, "originalSize", jsi::Value(static_cast<double>(fileOperationResult.originalSize)));
result.setProperty(runtime, "finalSize", jsi::Value(static_cast<double>(fileOperationResult.finalSize)));

return result;
return createJsResultObject(runtime, fileOperationResult);
}));

lz4.setProperty(runtime,
Expand All @@ -339,13 +345,7 @@ namespace lz4

FileOperationResult fileOperationResult = lz4::decompressFile(sourcePath, destinationPath);

jsi::Object result = jsi::Object(runtime);
result.setProperty(runtime, "success", jsi::Value(fileOperationResult.success));
result.setProperty(runtime, "message", jsi::String::createFromUtf8(runtime, fileOperationResult.message));
result.setProperty(runtime, "originalSize", jsi::Value(static_cast<double>(fileOperationResult.originalSize)));
result.setProperty(runtime, "finalSize", jsi::Value(static_cast<double>(fileOperationResult.finalSize)));

return result;
return createJsResultObject(runtime, fileOperationResult);
}));

// Expose the lz4 object globally
Expand Down

0 comments on commit 7cf6b47

Please sign in to comment.