Rudiments
Public Member Functions | List of all members
url Class Reference

Inherits file.

Public Member Functions

 url ()
 
virtual ~url ()
 
void useHttpGet ()
 
void useHttpPost ()
 
void setHttpPostContentType (const char *contenttype)
 
void setHttpPostData (const char *data, uint64_t size)
 
void setHttpUserAgent (const char *useragent)
 
void setHttpHeaders (const char *headers)
 
const char * getError ()
 
- Public Member Functions inherited from file
 file ()
 
 file (const file &f)
 
fileoperator= (const file &f)
 
virtual ~file ()
 
virtual bool open (const char *name, int32_t flags)
 
virtual bool open (const char *name, int32_t flags, mode_t perms)
 
virtual bool create (const char *name, mode_t perms)
 
virtual char * getContents ()
 
virtual ssize_t getContents (unsigned char *buffer, size_t buffersize)
 
virtual bool truncate () const
 
virtual bool truncate (off64_t size) const
 
virtual off64_t getCurrentPosition () const
 
virtual off64_t setPositionRelativeToBeginning (off64_t offset) const
 
virtual off64_t setPositionRelativeToCurrent (off64_t offset) const
 
virtual off64_t setPositionRelativeToEnd (off64_t offset) const
 
virtual bool tryLockFile (int16_t type) const
 
virtual bool lockFile (int16_t type) const
 
virtual bool checkLockFile (int16_t type, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockFile () const
 
virtual bool tryLockRegion (int16_t type, off64_t start, off64_t len) const
 
virtual bool lockRegion (int16_t type, off64_t start, off64_t len) const
 
virtual bool checkLockRegion (int16_t type, off64_t start, off64_t len, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockRegion (off64_t start, off64_t len) const
 
virtual bool tryLockFromCurrent (int16_t type, off64_t len) const
 
virtual bool tryLockFromCurrent (int16_t type, off64_t start, off64_t len) const
 
virtual bool lockFromCurrent (int16_t type, off64_t len) const
 
virtual bool lockFromCurrent (int16_t type, off64_t start, off64_t len) const
 
virtual bool checkLockFromCurrent (int16_t type, off64_t len, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool checkLockFromCurrent (int16_t type, off64_t start, off64_t len, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockFromCurrent (off64_t len) const
 
virtual bool unlockFromCurrent (off64_t start, off64_t len) const
 
virtual bool tryLockFromEnd (int16_t type, off64_t len) const
 
virtual bool tryLockFromEnd (int16_t type, off64_t start, off64_t len) const
 
virtual bool lockFromEnd (int16_t type, off64_t len) const
 
virtual bool lockFromEnd (int16_t type, off64_t start, off64_t len) const
 
virtual bool checkLockFromEnd (int16_t type, off64_t len, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool checkLockFromEnd (int16_t type, off64_t start, off64_t len, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockFromEnd (off64_t len) const
 
virtual bool unlockFromEnd (off64_t start, off64_t len) const
 
virtual bool tryLockRemainder (int16_t type, off64_t start) const
 
virtual bool lockRemainder (int16_t type, off64_t start) const
 
virtual bool checkLockRemainder (int16_t type, off64_t start, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockRemainder (off64_t start) const
 
virtual bool tryLockRemainderFromCurrent (int16_t type) const
 
virtual bool tryLockRemainderFromCurrent (int16_t type, off64_t start) const
 
virtual bool lockRemainderFromCurrent (int16_t type) const
 
virtual bool lockRemainderFromCurrent (int16_t type, off64_t start) const
 
virtual bool checkLockRemainderFromCurrent (int16_t type, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool checkLockRemainderFromCurrent (int16_t type, off64_t start, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockRemainderFromCurrent () const
 
virtual bool unlockRemainderFromCurrent (off64_t start) const
 
virtual bool tryLockRemainderFromEnd (int16_t type) const
 
virtual bool tryLockRemainderFromEnd (int16_t type, off64_t start) const
 
virtual bool lockRemainderFromEnd (int16_t type) const
 
virtual bool lockRemainderFromEnd (int16_t type, off64_t start) const
 
virtual bool checkLockRemainderFromEnd (int16_t type, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool checkLockRemainderFromEnd (int16_t type, off64_t start, int16_t *conftype, int16_t *confwhence, off64_t *confstart, off64_t *conflen) const
 
virtual bool unlockRemainderFromEnd () const
 
virtual bool unlockRemainderFromEnd (off64_t start) const
 
virtual bool sequentialAccess (off64_t start, size_t len) const
 
virtual bool randomAccess (off64_t start, size_t len) const
 
virtual bool onlyOnce (off64_t start, size_t len) const
 
virtual bool willNeed (off64_t start, size_t len) const
 
virtual bool wontNeed (off64_t start, size_t len) const
 
virtual bool normalAccess (off64_t start, size_t len) const
 
virtual bool reserve (off64_t start, size_t len) const
 
virtual bool sync () const
 
virtual bool dataSync () const
 
virtual void dontGetCurrentPropertiesOnOpen ()
 
virtual void getCurrentPropertiesOnOpen ()
 
virtual bool getCurrentProperties ()
 
virtual mode_t getPermissions () const
 
virtual uid_t getOwnerUserId () const
 
virtual gid_t getOwnerGroupId () const
 
virtual off64_t getSize () const
 
virtual blksize_t getBlockSize () const
 
virtual blkcnt_t getBlockCount () const
 
virtual int32_t isSocket () const
 
virtual int32_t isSymbolicLink () const
 
virtual int32_t isRegularFile () const
 
virtual int32_t isBlockDevice () const
 
virtual int32_t isDirectory () const
 
virtual int32_t isCharacterDevice () const
 
virtual int32_t isFifo () const
 
virtual time_t getLastAccessTime () const
 
virtual time_t getLastModificationTime () const
 
virtual time_t getLastChangeTime () const
 
virtual dev_t getDevice () const
 
virtual dev_t getDeviceType () const
 
virtual uint64_t getInode () const
 
virtual nlink_t getNumberOfHardLinks () const
 
virtual bool setPermissions (mode_t perms) const
 
virtual bool changeOwner (const char *newuser, const char *newgroup) const
 
virtual bool changeOwner (uid_t uid, gid_t gid) const
 
virtual bool canChangeOwner () const
 
virtual int64_t maxLinks () const
 
virtual void * getInternalFileStatisticsStructure ()
 
- Public Member Functions inherited from filedescriptor
 filedescriptor ()
 
 filedescriptor (const filedescriptor &f)
 
filedescriptoroperator= (const filedescriptor &f)
 
virtual ~filedescriptor ()
 
virtual bool close ()
 
int32_t getFileDescriptor () const
 
void setFileDescriptor (int32_t filedesc)
 
int32_t duplicate () const
 
bool duplicate (int32_t newfd) const
 
void setSecurityContext (securitycontext *ctx)
 
securitycontextgetSecurityContext ()
 
virtual bool supportsBlockingNonBlockingModes ()
 
virtual bool useNonBlockingMode () const
 
virtual bool useBlockingMode () const
 
virtual bool isUsingNonBlockingMode () const
 
ssize_t write (uint16_t number)
 
ssize_t write (uint32_t number)
 
ssize_t write (uint64_t number)
 
ssize_t write (int16_t number)
 
ssize_t write (int32_t number)
 
ssize_t write (int64_t number)
 
ssize_t write (float number)
 
ssize_t write (double number)
 
ssize_t write (unsigned char character)
 
ssize_t write (char character)
 
ssize_t write (bool value)
 
ssize_t write (const unsigned char *string)
 
ssize_t write (const char *string)
 
ssize_t write (const unsigned char *string, size_t size)
 
ssize_t write (const char *string, size_t length)
 
ssize_t write (const void *buffer, size_t size)
 
ssize_t write (uint16_t number, int32_t sec, int32_t usec)
 
ssize_t write (uint32_t number, int32_t sec, int32_t usec)
 
ssize_t write (uint64_t number, int32_t sec, int32_t usec)
 
ssize_t write (int16_t number, int32_t sec, int32_t usec)
 
ssize_t write (int32_t number, int32_t sec, int32_t usec)
 
ssize_t write (int64_t number, int32_t sec, int32_t usec)
 
ssize_t write (float number, int32_t sec, int32_t usec)
 
ssize_t write (double number, int32_t sec, int32_t usec)
 
ssize_t write (unsigned char character, int32_t sec, int32_t usec)
 
ssize_t write (char character, int32_t sec, int32_t usec)
 
ssize_t write (bool value, int32_t sec, int32_t usec)
 
ssize_t write (const unsigned char *string, int32_t sec, int32_t usec)
 
ssize_t write (const char *string, int32_t sec, int32_t usec)
 
ssize_t write (const unsigned char *string, size_t size, int32_t sec, int32_t usec)
 
ssize_t write (const char *string, size_t size, int32_t sec, int32_t usec)
 
ssize_t write (const void *buffer, size_t size, int32_t sec, int32_t usec)
 
size_t printf (const char *format,...)
 
size_t printf (const char *format, va_list *argp)
 
void safePrint (unsigned char c)
 
void safePrint (const unsigned char *str)
 
void safePrint (const unsigned char *str, int32_t length)
 
void safePrint (char c)
 
void safePrint (const char *str)
 
void safePrint (const char *str, int32_t length)
 
void printBits (unsigned char value)
 
void printBits (uint16_t value)
 
void printBits (uint32_t value)
 
void printBits (uint64_t value)
 
void printBits (char value)
 
void printBits (int16_t value)
 
void printBits (int32_t value)
 
void printBits (int64_t value)
 
void printBits (const unsigned char *bits, uint64_t size)
 
ssize_t read (uint16_t *buffer)
 
ssize_t read (uint32_t *buffer)
 
ssize_t read (uint64_t *buffer)
 
ssize_t read (int16_t *buffer)
 
ssize_t read (int32_t *buffer)
 
ssize_t read (int64_t *buffer)
 
ssize_t read (float *buffer)
 
ssize_t read (double *buffer)
 
ssize_t read (unsigned char *buffer)
 
ssize_t read (char *buffer)
 
ssize_t read (bool *buffer)
 
ssize_t read (unsigned char *buffer, size_t size)
 
ssize_t read (char *buffer, size_t length)
 
ssize_t read (void *buf, size_t size)
 
ssize_t read (char **buffer, const char *terminator)
 
ssize_t read (char **buffer, const char *terminator, size_t maxbytes)
 
ssize_t read (uint16_t *buffer, int32_t sec, int32_t usec)
 
ssize_t read (uint32_t *buffer, int32_t sec, int32_t usec)
 
ssize_t read (uint64_t *buffer, int32_t sec, int32_t usec)
 
ssize_t read (int16_t *buffer, int32_t sec, int32_t usec)
 
ssize_t read (int32_t *buffer, int32_t sec, int32_t usec)
 
ssize_t read (int64_t *buffer, int32_t sec, int32_t usec)
 
ssize_t read (float *buffer, int32_t sec, int32_t usec)
 
ssize_t read (double *buffer, int32_t sec, int32_t usec)
 
ssize_t read (unsigned char *buffer, int32_t sec, int32_t usec)
 
ssize_t read (char *buffer, int32_t sec, int32_t usec)
 
ssize_t read (bool *buffer, int32_t sec, int32_t usec)
 
ssize_t read (unsigned char *buffer, size_t size, int32_t sec, int32_t usec)
 
ssize_t read (char *buffer, size_t size, int32_t sec, int32_t usec)
 
ssize_t read (void *buf, size_t size, int32_t sec, int32_t usec)
 
ssize_t read (char **buffer, const char *terminator, int32_t sec, int32_t usec)
 
ssize_t read (char **buffer, const char *terminator, size_t maxbytes, int32_t sec, int32_t usec)
 
ssize_t read (char **buffer, const char *terminator, size_t maxbytes, char escapechar, int32_t sec, int32_t usec)
 
int32_t waitForNonBlockingRead (int32_t sec, int32_t usec) const
 
int32_t waitForNonBlockingWrite (int32_t sec, int32_t usec) const
 
void retryInterruptedReads ()
 
void dontRetryInterruptedReads ()
 
bool getRetryInterruptedReads () const
 
void retryInterruptedWrites ()
 
void dontRetryInterruptedWrites ()
 
bool getRetryInterruptedWrites () const
 
void retryInterruptedWaits ()
 
void dontRetryInterruptedWaits ()
 
bool getRetryInterruptedWaits () const
 
void retryInterruptedFcntl ()
 
void dontRetryInterruptedFcntl ()
 
bool getRetryInterruptedFcntl () const
 
void retryInterruptedIoctl ()
 
void dontRetryInterruptedIoctl ()
 
bool getRetryInterruptedIoctl () const
 
void allowShortReads ()
 
void dontAllowShortReads ()
 
void allowShortWrites ()
 
void dontAllowShortWrites ()
 
virtual bool passFileDescriptor (int32_t fd)
 
virtual bool receiveFileDescriptor (int32_t *fd)
 
virtual bool passSocket (int32_t sock)
 
virtual bool receiveSocket (int32_t *sock)
 
void translateByteOrder ()
 
void dontTranslateByteOrder ()
 
virtual int32_t fCntl (int32_t command, long arg) const
 
virtual int32_t ioCtl (int32_t command, void *arg) const
 
bool useNaglesAlgorithm ()
 
bool dontUseNaglesAlgorithm ()
 
bool setSocketWriteBufferSize (int32_t size)
 
bool getSocketWriteBufferSize (int32_t *size)
 
bool setSocketReadBufferSize (int32_t size)
 
bool getSocketReadBufferSize (int32_t *size)
 
bool disableIPv4 ()
 
bool enableIPv4 ()
 
const char * getType () const
 
char * getPeerAddress () const
 
bool setWriteBufferSize (ssize_t size) const
 
bool flushWriteBuffer (int32_t sec, int32_t usec)
 
bool setReadBufferSize (ssize_t size) const
 
bool closeOnExec ()
 
bool dontCloseOnExec ()
 
bool getCloseOnExec ()
 

Additional Inherited Members

- Static Public Member Functions inherited from file
static bool createFile (const char *name, mode_t perms)
 
static bool createFifo (const char *filename, mode_t perms)
 
static int32_t createTemporaryFile (char *templatefilename)
 
static int32_t createTemporaryFile (char *templatefilename, mode_t perms)
 
static bool createHardLink (const char *oldpath, const char *newpath)
 
static bool createSymbolicLink (const char *oldpath, const char *newpath)
 
static char * resolveSymbolicLink (const char *filename)
 
static bool rename (const char *oldpath, const char *newpath)
 
static bool remove (const char *filename)
 
static bool truncate (const char *filename)
 
static bool truncate (const char *filename, off64_t size)
 
static char * getContents (const char *name)
 
static ssize_t getContents (const char *name, unsigned char *buffer, size_t buffersize)
 
static bool exists (const char *filename)
 
static bool readable (const char *filename)
 
static bool writeable (const char *filename)
 
static bool executable (const char *filename)
 
static bool accessible (const char *filename, int32_t mode)
 
static bool getLastChangeTime (const char *filename, time_t *ctime)
 
static bool setPermissions (const char *filename, mode_t perms)
 
static bool changeOwner (const char *filename, const char *newuser, const char *newgroup)
 
static bool changeOwner (const char *filename, uid_t uid, gid_t gid)
 
static bool canChangeOwner (const char *filename)
 
static bool setLastAccessTime (const char *filename, time_t lastaccesstime)
 
static bool setLastModificationTime (const char *filename, time_t lastmodtime)
 
static bool setLastAccessAndModificationTimes (const char *filename, time_t lastaccesstime, time_t lastmodtime)
 
static bool setLastAccessAndModificationTimes (const char *filename)
 
static char * dirname (const char *filename)
 
static char * basename (const char *filename)
 
static char * basename (const char *filename, const char *ext)
 
static char * extension (const char *filename)
 
static char * eightDotThree (const char *filename)
 
static key_t generateKey (const char *filename, int32_t id)
 
static int64_t maxLinks (const char *filename)
 
- Static Public Member Functions inherited from filedescriptor
static bool createPipe (filedescriptor *readfd, filedescriptor *writefd)
 
static uint16_t hostToNet (uint16_t value)
 
static uint32_t hostToNet (uint32_t value)
 
static uint64_t hostToNet (uint64_t value)
 
static uint16_t netToHost (uint16_t value)
 
static uint32_t netToHost (uint32_t value)
 
static uint64_t netToHost (uint64_t value)
 
static uint16_t hostToLittleEndian (uint16_t value)
 
static uint32_t hostToLittleEndian (uint32_t value)
 
static uint64_t hostToLittleEndian (uint64_t value)
 
static uint16_t littleEndianToHost (uint16_t value)
 
static uint32_t littleEndianToHost (uint32_t value)
 
static uint64_t littleEndianToHost (uint64_t value)
 

Detailed Description

The url class provides read access to urls.

Its parent class: file provides provides open(), read(), and close() methods.

http urls, with Basic Authentication, are supported on all platforms.

urls for other protocols, including ftp, https, scp, sftp, and others, are supported if rudiments was compiled with support for libcurl.

Examples of supported urls include:

The url class supports storing the user:password portion of a url in a user-password file. These files may be referenced in the url by enclosing the full pathname of the file in square brackets. The file should consist of a single line containing the user and password, separated by a colon.

For example:

myusername:mypassword

Constructor & Destructor Documentation

◆ url()

url::url ( )

Creates an instance of the url class.

◆ ~url()

virtual url::~url ( )
virtual

Deletes this instance of the url class.