Web framework C++  2.0.0
Simple web framework on c++ designed to easily create web pages, etc
Public Member Functions | Protected Attributes | List of all members
FsBuilder Class Referenceabstract

Builder template for FsMiddleware. More...

#include <fs_builder.h>

Collaboration diagram for FsBuilder:
Collaboration graph

Public Member Functions

virtual ~FsBuilder ()=default
 
virtual FsFilebuildFile (std::string &filePath)=0
 
virtual FsFolderbuildFolder (std::string &folderPath, const char *folderName)=0
 
FsComponentgetResult ()
 
void reset ()
 

Protected Attributes

FsComponentroot = nullptr
 

Detailed Description

Builder template for FsMiddleware.

This class is intended to create a file system hierarchy for specified folder by given path. FsBuilder as a builder template make hierarchy for composite template, that represents file system: FsComponent, FsFile,FsFolder. By default, there are two builders: FsUnixBuilder and FsWindowsBuilder.

Constructor & Destructor Documentation

virtual FsBuilder::~FsBuilder ( )
virtualdefault

virtual destructor

Member Function Documentation

virtual FsFile* FsBuilder::buildFile ( std::string &  filePath)
pure virtual

make a FsComponent wrapper for files - leaves of hierarchy

Parameters
filePathfull path to concrete file
Returns
FsFile object
virtual FsFolder* FsBuilder::buildFolder ( std::string &  folderPath,
const char *  folderName 
)
pure virtual

make a FsComponent wrapper for folder, and then recursively build hierarchy from inner folder and files

Parameters
folderPathpath to folder
folderNamename of folder
Returns
FsFolder object
FsComponent* FsBuilder::getResult ( )
inline

get result of produced hierarchy by buildFolder method

Returns
root FsComponent entity
void FsBuilder::reset ( )
inline

reset state before making new composition

Member Data Documentation

FsComponent* FsBuilder::root = nullptr
protected

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