Classes, interfaces and traits

AttachmentsHandler

Class AttachmentsHandler

This class will handle the email attachments organization. Every email must have its own attachments directory so that we can avoid file issues between emails.
« More »

EmailFactory

Class EmailFactory

« More »

EmailService

Class EmailService

Represents the public API for the Email service of the system. External users must use this class for all the email operations except. Important: Since the attachments will be flat-stored in the "uploads/attachmetns" directory the "send" and "queue" method will have to perform multiple writes to the database in order to get robust attachment handling that will not crash the rest of the service.
« More »

MailerAdapter

Class MailerAdapter

This class provides a communication layer with the external mailing library in order to isolate the library-specific code.
« More »

Classes, interfaces and traits

AttachmentCollectionInterface

Interface AttachmentCollectionInterface

« More »

AttachmentsHandlerInterface

Class AttachmentsHandlerInterface

« More »

ContactCollectionInterface

Interface ContactCollectionInterface

« More »

ContactNameInterface

Interface ContactNameInterface

« More »

ContactTypeInterface

Interface ContactTypeInterface

« More »

EmailAddressInterface

Interface EmailAddressInterface

« More »

EmailAttachmentInterface

Interface EmailAttachmentInterface

« More »

EmailCollectionInterface

Interface EmailCollectionInterface

« More »

EmailContactInterface

Interface EmailContactInterface

« More »

EmailContentInterface

Interface EmailContentInterface

« More »

EmailDeleterInterface

Interface EmailDeleterInterface

« More »

EmailFactoryInterface

Interface EmailFactoryInterface

« More »

EmailInterface

Interface EmailInterface

« More »

EmailReaderInterface

Interface EmailReaderInterface

« More »

EmailRepositoryInterface

Interface EmailRepositoryInterface

« More »

EmailServiceInterface

Interface EmailServiceInterface

« More »

EmailSubjectInterface

Interface EmailSubjectInterface

« More »

EmailWriterInterface

Interface EmailWriterInterface

« More »

MailerAdapterInterface

Interface MailerAdapterInterface

« More »

Classes, interfaces and traits

AttachmentNameInterface

Interface AttachmentNameInterface

« More »

AttachmentPathInterface

Interface AttachmentPathInterface

« More »

AttachmentName

Class AttachmentName

Important: This value object is not going to check if the attachment file exists in the server because that would cause problems with the service usage (e.g. if an attachment file is missing an exception would halt all the email service operations).
« More »

AttachmentPath

Class AttachmentPath

Important: This value object is not going to check if the attachment file exists in the server because that would cause problems with the service usage (e.g. if an attachment file is missing an exception would halt all the email service operations).
« More »

ContactName

Class ContactName

Contact name will be the display name for an EmailContact object.
« More »

ContactType

Class ContactType

« More »

EmailAddress

Class EmailAddress

Represents an email address (both email address and displayed name).
« More »

EmailContent

Class EmailContent

Email content could be either plain text or HTML.
« More »

EmailSubject

Class EmailSubject

Subject assigned to an email.
« More »

Classes, interfaces and traits

Email

Class representing the database entity of an email.

« More »

EmailAttachment

Class EmailAttachment

Email attachment will serve as the path to the file that needs to be attached (located on the server).
« More »

EmailContact

Class EmailContact

Represents a contact (sender/recipient) that participates in an email entity.
« More »

Classes, interfaces and traits

AttachmentCollection

Class AttachmentCollection

Handles the attachment collections of an Email.
« More »

ContactCollection

Class ContactCollection

Handles collection of EmailContact objects.
« More »

EmailCollection

Class EmailCollection

Used by operations that consider multiple email objects.
« More »

Classes, interfaces and traits

EmailDeleter

Class EmailDeleter

Deletes email records from the database.
« More »

EmailReader

Class EmailReader

Reads email records from the database. This class provides a customizable interface for reading operations so that it is possible to build different variations in the EmailRepository class (e.g. "getPending", "findById", "getAll").
« More »

EmailRepository

Class EmailRepository

Handles the database operations that concern the email records of the database. It provides a layer for more complicated methods that use the writer, reader and deleter.
« More »

EmailWriter

Class EmailWriter

Writes email records in the database (insert/update operations).
« More »

Classes, interfaces and traits

AttachmentNotFoundException

Class AttachmentNotFoundException

Is thrown whenever an email attachment file could not be found on the server.
« More »