dmlite 0.6
dmlite::IODriver Class Referenceabstract

IO Driver. More...

#include <io.h>

Inheritance diagram for dmlite::IODriver:
Collaboration diagram for dmlite::IODriver:

Public Types

enum  { kInsecure = 010 }
 

Public Member Functions

virtual ~IODriver ()
 Virtual destructor.
 
virtual std::string getImplId (void) const throw () =0
 String ID of the implementation.
 
virtual IOHandlercreateIOHandler (const std::string &pfn, int flags, const Extensible &extras, mode_t mode=0660)
 
virtual void doneWriting (const Location &loc)
 
- Public Member Functions inherited from dmlite::BaseInterface
virtual ~BaseInterface ()
 Virtual destructor.
 
- Public Member Functions inherited from dmlite::BaseFactory
virtual ~BaseFactory ()
 Virtual destructor.
 
virtual void configure (const std::string &key, const std::string &value)
 

Static Public Member Functions

static IOHandlercreateIOHandler (IODriver *factory, const std::string &pfn, int flags, const Extensible &extras, mode_t mode=0660)
 

Protected Member Functions

virtual void setSecurityContext (const SecurityContext *ctx)
 Set the security context.
 
- Protected Member Functions inherited from dmlite::BaseInterface
virtual void setStackInstance (StackInstance *si)
 

Static Protected Member Functions

static void setSecurityContext (IODriver *i, const SecurityContext *ctx)
 
- Static Protected Member Functions inherited from dmlite::BaseInterface
static void setStackInstance (BaseInterface *i, StackInstance *si)
 These method allows plugins to call other plugins setStackInstance and setSecurityContext.
 
static void setSecurityContext (BaseInterface *i, const SecurityContext *ctx)
 

Friends

class StackInstance
 

Detailed Description

IO Driver.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Use this flag in addition to the standard ones to skip any security check (i.e. token validation) Example: createIOHandler("/file.txt", O_RDONLY | IODriver::kInsecure, extras);

Enumerator
kInsecure 

Constructor & Destructor Documentation

◆ ~IODriver()

virtual dmlite::IODriver::~IODriver ( )
virtual

Virtual destructor.

Member Function Documentation

◆ createIOHandler() [1/2]

virtual IOHandler * dmlite::IODriver::createIOHandler ( const std::string & pfn,
int flags,
const Extensible & extras,
mode_t mode = 0660 )
virtual

Instantiate a implementation of IOHandler

Parameters
pfnThe file name.
flagsThe open mode. See man 2 open.
extrasAs was given by the PoolHandler.
modeWhen called with O_CREAT, it will be used to create the file.

◆ createIOHandler() [2/2]

static IOHandler * dmlite::IODriver::createIOHandler ( IODriver * factory,
const std::string & pfn,
int flags,
const Extensible & extras,
mode_t mode = 0660 )
static

◆ doneWriting()

virtual void dmlite::IODriver::doneWriting ( const Location & loc)
virtual

Must be called when the front-end is done writing.

Parameters
pfnThe file name.
locThe Location object as returned by whereToWrite

◆ getImplId()

virtual std::string dmlite::IODriver::getImplId ( void ) const
throw ( )
pure virtual

String ID of the implementation.

Implements dmlite::BaseInterface.

◆ setSecurityContext() [1/2]

virtual void dmlite::IODriver::setSecurityContext ( const SecurityContext * ctx)
protectedvirtual

Set the security context.

Reimplemented from dmlite::BaseInterface.

◆ setSecurityContext() [2/2]

static void dmlite::IODriver::setSecurityContext ( IODriver * i,
const SecurityContext * ctx )
staticprotected

Friends And Related Symbol Documentation

◆ StackInstance

friend class StackInstance
friend

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