VMime
store Class Referenceabstract
Inheritance diagram for store:
Collaboration diagram for store:

Public Types

enum  Capabilities {
  CAPABILITY_CREATE_FOLDER = (1 << 0), CAPABILITY_RENAME_FOLDER = (1 << 1), CAPABILITY_ADD_MESSAGE = (1 << 2), CAPABILITY_COPY_MESSAGE = (1 << 3),
  CAPABILITY_DELETE_MESSAGE = (1 << 4), CAPABILITY_PARTIAL_FETCH = (1 << 5), CAPABILITY_MESSAGE_FLAGS = (1 << 6), CAPABILITY_EXTRACT_PART = (1 << 7)
}
 
- Public Types inherited from service
enum  Type { TYPE_STORE = 0, TYPE_TRANSPORT }
 

Public Member Functions

virtual shared_ptr< foldergetDefaultFolder ()=0
 
virtual shared_ptr< foldergetRootFolder ()=0
 
virtual shared_ptr< foldergetFolder (const folder::path &path)=0
 
virtual bool isValidFolderName (const folder::path::component &name) const =0
 
virtual int getCapabilities () const =0
 
Type getType () const
 
- Public Member Functions inherited from service
virtual ~service ()
 
virtual const string getProtocolName () const =0
 
shared_ptr< const sessiongetSession () const
 
shared_ptr< sessiongetSession ()
 
virtual const serviceInfosgetInfos () const =0
 
virtual void connect ()=0
 
virtual void disconnect ()=0
 
virtual bool isConnected () const =0
 
virtual void noop ()=0
 
shared_ptr< const
security::authenticator
getAuthenticator () const
 
shared_ptr
< security::authenticator
getAuthenticator ()
 
void setAuthenticator (shared_ptr< security::authenticator > auth)
 
void setCertificateVerifier (shared_ptr< security::cert::certificateVerifier > cv)
 
shared_ptr
< security::cert::certificateVerifier
getCertificateVerifier ()
 
void setSocketFactory (shared_ptr< socketFactory > sf)
 
shared_ptr< socketFactorygetSocketFactory ()
 
void setTimeoutHandlerFactory (shared_ptr< timeoutHandlerFactory > thf)
 
shared_ptr< timeoutHandlerFactorygetTimeoutHandlerFactory ()
 
void setTracerFactory (shared_ptr< tracerFactory > tf)
 
shared_ptr< tracerFactorygetTracerFactory ()
 
template<typename TYPE >
void setProperty (const string &name, const TYPE &value)
 
virtual bool isSecuredConnection () const =0
 
virtual shared_ptr
< connectionInfos
getConnectionInfos () const =0
 

Protected Member Functions

 store (shared_ptr< session > sess, const serviceInfos &infos, shared_ptr< security::authenticator > auth)
 
- Protected Member Functions inherited from service
 service (shared_ptr< session > sess, const serviceInfos &infos, shared_ptr< security::authenticator > auth)
 
- Protected Member Functions inherited from object
 object ()
 
 object (const object &)
 
objectoperator= (const object &)
 
virtual ~object ()
 

Detailed Description

A store service.

Encapsulate protocols that provide access to user's mail drop.

Member Enumeration Documentation

Store capabilities.

Enumerator
CAPABILITY_CREATE_FOLDER 

Can create folders.

CAPABILITY_RENAME_FOLDER 

Can rename folders.

CAPABILITY_ADD_MESSAGE 

Can append message to folders.

CAPABILITY_COPY_MESSAGE 

Can copy messages from a folder to another one.

CAPABILITY_DELETE_MESSAGE 

Can delete messages.

CAPABILITY_PARTIAL_FETCH 

Is partial fetch supported?

CAPABILITY_MESSAGE_FLAGS 

Can set flags on messages.

CAPABILITY_EXTRACT_PART 

Can extract a specific part of the message.

Constructor & Destructor Documentation

store ( shared_ptr< session sess,
const serviceInfos infos,
shared_ptr< security::authenticator auth 
)
protected

Member Function Documentation

virtual int getCapabilities ( ) const
pure virtual

Return the features supported by this service.

This is a combination of store::CAPABILITY_xxx flags.

Returns
features supported by this service

Implemented in maildirStore, IMAPStore, and POP3Store.

virtual shared_ptr<folder> getDefaultFolder ( )
pure virtual

Return the default folder.

This is protocol dependent and usually is the INBOX folder.

Returns
default folder

Implemented in IMAPStore, maildirStore, and POP3Store.

virtual shared_ptr<folder> getFolder ( const folder::path path)
pure virtual

Return the folder specified by the path.

Parameters
pathabsolute folder path
Returns
folder at the specified path

Implemented in IMAPStore, maildirStore, and POP3Store.

virtual shared_ptr<folder> getRootFolder ( )
pure virtual

Return the root folder.

This is protocol dependent and usually is the user's mail drop root folder.

Returns
root folder

Implemented in IMAPStore, maildirStore, and POP3Store.

Type getType ( ) const
virtual

Return the type of service.

Returns
type of service

Implements service.

virtual bool isValidFolderName ( const folder::path::component name) const
pure virtual

Test whether the specified folder name is a syntactically a valid name.

Returns
true if the specified folder name is valid, false otherwise

Implemented in IMAPStore, maildirStore, and POP3Store.


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