. */ namespace SP\Core; use SP\Providers\Acl\AclHandler; use SP\Providers\Log\DatabaseLogHandler; use SP\Providers\Log\FileLogHandler; use SP\Providers\Log\RemoteSyslogHandler; use SP\Providers\Log\SyslogHandler; use SP\Providers\Mail\MailHandler; use SP\Providers\Notification\NotificationHandler; /** * The Provider helper class will have oll the providers availabe in the application */ final class ProvidersHelper { private FileLogHandler $fileLogHandler; private DatabaseLogHandler $databaseLogHandler; private MailHandler $mailHandler; private SyslogHandler $syslogHandler; private RemoteSyslogHandler $remoteSyslogHandler; private AclHandler $aclHandler; private NotificationHandler $notificationHandler; /** * Module constructor. * * @param \SP\Providers\Log\FileLogHandler $fileLogHandler * @param \SP\Providers\Log\DatabaseLogHandler $databaseLogHandler * @param \SP\Providers\Mail\MailHandler $mailHandler * @param \SP\Providers\Log\SyslogHandler $syslogHandler * @param \SP\Providers\Log\RemoteSyslogHandler $remoteSyslogHandler * @param \SP\Providers\Acl\AclHandler $aclHandler * @param \SP\Providers\Notification\NotificationHandler $notificationHandler */ public function __construct( FileLogHandler $fileLogHandler, DatabaseLogHandler $databaseLogHandler, MailHandler $mailHandler, SyslogHandler $syslogHandler, RemoteSyslogHandler $remoteSyslogHandler, AclHandler $aclHandler, NotificationHandler $notificationHandler ) { $this->fileLogHandler = $fileLogHandler; $this->databaseLogHandler = $databaseLogHandler; $this->mailHandler = $mailHandler; $this->syslogHandler = $syslogHandler; $this->remoteSyslogHandler = $remoteSyslogHandler; $this->aclHandler = $aclHandler; $this->notificationHandler = $notificationHandler; } /** * @return \SP\Providers\Log\FileLogHandler */ public function getFileLogHandler(): FileLogHandler { return $this->fileLogHandler; } /** * @return \SP\Providers\Log\DatabaseLogHandler */ public function getDatabaseLogHandler(): DatabaseLogHandler { return $this->databaseLogHandler; } /** * @return \SP\Providers\Mail\MailHandler */ public function getMailHandler(): MailHandler { return $this->mailHandler; } /** * @return \SP\Providers\Log\SyslogHandler */ public function getSyslogHandler(): SyslogHandler { return $this->syslogHandler; } /** * @return \SP\Providers\Log\RemoteSyslogHandler */ public function getRemoteSyslogHandler(): RemoteSyslogHandler { return $this->remoteSyslogHandler; } /** * @return \SP\Providers\Acl\AclHandler */ public function getAclHandler(): AclHandler { return $this->aclHandler; } /** * @return \SP\Providers\Notification\NotificationHandler */ public function getNotificationHandler(): NotificationHandler { return $this->notificationHandler; } }