IFS::JsonDirectoryTemplate Class Reference

Read-only stream providing directory listing in JSON format. More...

#include <JsonDirectoryTemplate.h>

Inheritance diagram for IFS::JsonDirectoryTemplate:
[legend]
Collaboration diagram for IFS::JsonDirectoryTemplate:
[legend]

Public Member Functions

 JsonDirectoryTemplate (IDataSourceStream *source, Directory *dir)
 
- Public Member Functions inherited from IFS::DirectoryTemplate
 DirectoryTemplate (IDataSourceStream *source, Directory *dir)
 
 ~DirectoryTemplate ()
 
Directorydir ()
 
bool nextRecord () override
 Move to next record. More...
 
- Public Member Functions inherited from SectionTemplate
 SectionTemplate (IDataSourceStream *source)
 
void onGetValue (GetValue callback)
 
void setFormatter (Formatter &formatter)
 
Formatterformatter () const
 
MimeType getMimeType () const override
 Get MIME type for stream content. More...
 
const SectionStreamstream () const
 
int sectionIndex () const
 
uint8_t sectionCount () const
 
int recordIndex () const
 
bool gotoSection (uint8_t index)
 
void onNextRecord (NextRecord callback)
 
String evaluate (char *&expr) override
 
String getValue (const char *name) override
 Fetch a templated value. More...
 
- Public Member Functions inherited from TemplateStream
 TemplateStream (IDataSourceStream *stream, bool owned=true)
 Create a template stream. More...
 
 ~TemplateStream ()
 
StreamType getStreamType () const override
 Get the stream type. More...
 
uint16_t readMemoryBlock (char *data, int bufSize) override
 Read a block of memory. More...
 
int seekFrom (int offset, SeekOrigin origin) override
 Change position in stream. More...
 
bool isFinished () override
 Check if all data has been read. More...
 
void setVar (const String &name, const String &value)
 Set value of a variable in the template file. More...
 
void setVars (const Variables &vars)
 Set multiple variables in the template file. More...
 
Variablesvariables ()
 Get the template variables. More...
 
String getName () const override
 Returns name of the resource. More...
 
void onGetValue (GetValueDelegate callback)
 Set a callback to obtain variable values. More...
 
void enableOutput (bool enable)
 During processing applications may suppress output of certain sections by calling this method from within the getValue callback. More...
 
bool isOutputEnabled () const
 
void setDoubleBraces (bool enable)
 Use two braces {{X}} to mark tags. More...
 
- Public Member Functions inherited from IDataSourceStream
virtual bool isValid () const
 Determine if the stream object contains valid data. More...
 
size_t readBytes (char *buffer, size_t length) override
 Read chars from stream into buffer. More...
 
int read () override
 Read one character and moves the stream pointer. More...
 
int peek () override
 Read a character without advancing the stream pointer. More...
 
virtual bool seek (int len)
 Move read cursor. More...
 
virtual int available ()
 Return the total length of the stream. More...
 
size_t write (uint8_t charToWrite) override
 From Stream class: We don't write using this stream. More...
 
int length ()
 Return the total length of the stream. More...
 
void flush () override
 
virtual String id () const
 Returns unique id of the resource. More...
 
String readString (size_t maxLen) override
 Overrides Stream method for more efficient reading. More...
 
virtual bool moveString (String &s)
 Memory-based streams may be able to move content into a String. More...
 
- Public Member Functions inherited from Stream
 Stream ()
 
void setTimeout (unsigned long timeout)
 Set maximum milliseconds to wait for stream data, default is 1 second. More...
 
bool find (const char *target)
 Read data from the stream until the target string is found. More...
 
bool find (const char *target, size_t length)
 Read data from the stream until the target string of given length is found. More...
 
bool findUntil (const char *target, const char *terminator)
 As find() but search ends if the terminator string is found. More...
 
bool findUntil (const char *target, size_t targetLen, const char *terminate, size_t termLen)
 As findUntil(const char*, const char*) but search ends if the terminate string is found. More...
 
long parseInt ()
 Returns the first valid (long) integer value from the current position. More...
 
float parseFloat ()
 float version of parseInt More...
 
size_t readBytesUntil (char terminator, char *buffer, size_t length)
 As readBytes() with terminator character. More...
 
String readStringUntil (char terminator)
 
virtual int indexOf (char c)
 
- Public Member Functions inherited from Print
virtual ~Print ()
 
int getWriteError ()
 Gets last error. More...
 
void clearWriteError ()
 Clears the last write error. More...
 
size_t write (const char *str)
 Writes a c-string to output stream. More...
 
virtual size_t write (const uint8_t *buffer, size_t size)
 Writes characters from a buffer to output stream. More...
 
size_t write (const char *buffer, size_t size)
 Writes characters from a buffer to output stream. More...
 
size_t print (char c)
 Prints a single character to output stream. More...
 
size_t print (const char str[])
 Prints a c-string to output stream. More...
 
size_t print (double num, int digits=2)
 Print a floating-point number to output stream. More...
 
size_t print (const Printable &p)
 Prints a Printable object to output stream. More...
 
size_t print (const String &s)
 Prints a String to output stream. More...
 
size_t println ()
 Prints a newline to output stream. More...
 
size_t println (const char str[])
 Prints a c-string to output stream, appending newline. More...
 
size_t println (char c)
 Prints a single character to output stream, appending newline. More...
 
size_t println (double num, int digits=2)
 Print a floating-point number to output stream, appending newline. More...
 
size_t println (const Printable &p)
 Prints a Printable object to output stream, appending newline. More...
 
size_t println (const String &s)
 Prints a String to output stream, appending newline. More...
 
size_t printf (const char *fmt,...) __attribute__((format(printf
 Prints a formatted c-string to output stream. More...
 
size_t print (unsigned long num, int base=DEC)
 
size_t print (const unsigned long long &num, int base=DEC)
 
size_t print (long, int base=DEC)
 
size_t print (const long long &, int base=DEC)
 
size_t print (unsigned int num, int base=DEC)
 
size_t print (unsigned char num, int base=DEC)
 
size_t print (int num, int base=DEC)
 
size_t println (unsigned char num, int base=DEC)
 
size_t println (unsigned int num, int base=DEC)
 
size_t println (unsigned long num, int base=DEC)
 
size_t println (const unsigned long long &num, int base=DEC)
 
size_t println (int num, int base=DEC)
 
size_t println (long num, int base=DEC)
 
size_t println (const long long &num, int base=DEC)
 

Additional Inherited Members

- Public Types inherited from IFS::DirectoryTemplate
enum  Field { Field::unknown = 0, Field::XX }
 
- Public Types inherited from SectionTemplate
enum  Command { Command::Qunknown = 0, Command::XX }
 
enum  Field { Field::unknown = 0, Field::XX }
 
using GetValue = Delegate< String(const char *name)>
 Application callback to process additional fields. More...
 
using NextRecord = SectionStream::NextRecord
 
- Public Types inherited from TemplateStream
using Variables = HashMap< String, String >
 
using GetValueDelegate = Delegate< String(const char *name)>
 
- Protected Member Functions inherited from IFS::DirectoryTemplate
String getValue (const char *name) override
 Fetch a templated value. More...
 
- Protected Member Functions inherited from Stream
int timedRead ()
 
int timedPeek ()
 
int peekNextDigit ()
 returns the next numeric digit in the stream or -1 if timeout More...
 
long parseInt (char skipChar)
 Like regular parseInt() but the given skipChar is ignored. More...
 
float parseFloat (char skipChar)
 Like parseInt(skipChar) for float. More...
 
- Protected Member Functions inherited from Print
void setWriteError (int err=1)
 
- Protected Attributes inherited from Stream
uint16_t receiveTimeout = 1000
 number of milliseconds to wait for the next char before aborting timed read More...
 

Detailed Description

Read-only stream providing directory listing in JSON format.

Constructor & Destructor Documentation

◆ JsonDirectoryTemplate()

IFS::JsonDirectoryTemplate::JsonDirectoryTemplate ( IDataSourceStream source,
Directory dir 
)
inline

The documentation for this class was generated from the following file: