High level functions calling zmq.sendfile() and zmq.recvfile()
to zip, transfer, and unzip small files or directories contains small files.
A valid tcp port to be passed to zmq.sendfile() and
zmq.recvfile().
The name (as a string) vector of the in files to be zipped and to be sent away.
Logical; determines if a progress bar should be shown.
A flag for the method used by zmq_sendfile and
zmq_recvfile
A ZMQ ctx. If NULL (default), the function will initial one at
the beginning and destroy it after finishing file transfer.
A ZMQ socket based on ctx.
If NULL (default), the function will create one at the beginning
and close it after finishing file transfer.
A ZMQ socket endpoint to be passed to zmq.sendfile() and
zmq.recvfile().
The name (as a string) of the out file to be saved on the disk.
If outfile = NULL and exdir = NULL, a tempfile will be
used and the tempfile nanme will be returned.
The name (as a string) of the out directory to save the unzip files
unzipped from the received outfile.
zmq.senddir() and zmq.recvdir() return
number of bytes (invisible) in the sent message if successful,
otherwise returns -1 (invisible) and sets errno to the error
value, see ZeroMQ manual for details.
In addition, zmq.recvdir() returns a zipped file name in a list.
zmq.senddir() calls zmq.senddir(), and
zmq.recvdir() calls zmq.recvdir().
ZeroMQ/4.1.0 API Reference: https://libzmq.readthedocs.io/en/zeromq4-1/
Programming with Big Data in R Website: https://pbdr.org/
zmq.sendfile(), zmq.recvfile().
if (FALSE) { # \dontrun{
### Run the sender and receiver code in separate R sessions.
### Receiver
library(pbdZMQ, quietly = TRUE)
zmq.recvdir(55555, "localhost", outfile = "./backup_2019.zip",
verbose = TRUE)
### or unzip to exdir
# zmq.recvdir(55555, "localhost", exdir = "./backup_2019", verbose = TRUE)
### Sender
library(pbdZMQ, quietly = TRUE)
zmq.senddir(55555, c("./pbdZMQ/R", "./pbdZMQ/src"), verbose = TRUE)
} # }