## ECollectionBackendFactory ECollectionBackendFactory — An abstract base class for a data source collection backend factory |

## Synopsis

    #include <libebackend/libebackend.h>

    struct              ECollectionBackendFactory;
    void                e_collection_backend_factory_prepare_mail
                                                            (ECollectionBackendFactory *factory,
                                                             ESource *mail_account_source,
                                                             ESource *mail_identity_source,
                                                             ESource *mail_transport_source);

## Object Hierarchy

      GObject
       +----EExtension
             +----EBackendFactory
                   +----ECollectionBackendFactory

## Description

ECollectionBackendFactory is a type of EBackendFactory for creating ECollectionBackend instances.

## Details

### struct ECollectionBackendFactory

    struct ECollectionBackendFactory;

Contains only private data that should be read and manipulated using the functions below.

Since 3.6

### e_collection_backend_factory_prepare_mail ()

    void                e_collection_backend_factory_prepare_mail
                                                            (ECollectionBackendFactory *factory,
                                                             ESource *mail_account_source,
                                                             ESource *mail_identity_source,
                                                             ESource *mail_transport_source);

Convenience function to populate a set of ESource instances with mail account information to be added to an ECollectionBackend. This is mainly used for vendor-specific collection backends like Google or Yahoo! where the host, port, and security details are known ahead of time and only user-specific information needs to be filled in.

`factory` : | an ECollectionBackendFactory
`mail_account_source` : | an ESource to hold mail account information
`mail_identity_source` : | an ESource to hold mail identity information
`mail_transport_source` : | an ESource to hold mail transport information

Since 3.6