<?xml version="1.0" encoding="UTF-8"?>
<!--
 This file is part of the Meeds project (https://meeds.io/).

 Copyright (C) 2020 - 2025 Meeds Association contact@meeds.io

 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU Lesser General Public
 License as published by the Free Software Foundation; either
 version 3 of the License, or (at your option) any later version.
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 Lesser General Public License for more details.

 You should have received a copy of the GNU Lesser General Public License
 along with this program; if not, write to the Free Software Foundation,
 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-->
<configuration>

   <component>
      <key>org.exoplatform.services.listener.ListenerService</key>
      <type>org.exoplatform.services.listener.ListenerService</type>
   </component>

   <component>
      <key>org.exoplatform.services.scheduler.JobSchedulerService</key>
      <type>org.exoplatform.services.scheduler.impl.JobSchedulerServiceImpl</type>
      <component-plugins>
         <component-plugin>
            <name>JobContextConfigListener</name>
            <set-method>addGlobalJobListener</set-method>
            <type>org.exoplatform.services.scheduler.impl.JobEnvironmentConfigListener</type>
            <description>description</description>
         </component-plugin>

         <component-plugin>
            <name>QueueTask</name>
            <set-method>addPeriodJob</set-method>
            <type>org.exoplatform.services.scheduler.PeriodJob</type>
            <description>add QueueTaskJob to the JobSchedulerService</description>
            <init-params>
               <properties-param>
                  <name>job.info</name>
                  <description>Queue Task Job</description>
                  <property name="jobName" value="queueTask" />
                  <property name="groupName" value="queueTask" />
                  <property name="job" value="org.exoplatform.services.scheduler.impl.QueueTaskJob" />

                  <property name="repeatCount" value="0" />
                  <property name="period" value="10000" />
                  <property name="startTime" value="+0" />
                  <property name="endTime" value="" />
               </properties-param>
            </init-params>
         </component-plugin>
      </component-plugins>
      <init-params>
         <value-param>
            <name>data.version</name>
            <description>The current data version of the plugin module</description>
            <value>1.1</value>
         </value-param>
      </init-params>
   </component>

   <component>
      <key>org.exoplatform.services.scheduler.QueueTasks</key>
      <type>org.exoplatform.services.scheduler.QueueTasks</type>
   </component>

   <component>
      <key>org.exoplatform.services.idgenerator.IDGeneratorService</key>
      <type>org.exoplatform.services.idgenerator.impl.IDGeneratorServiceImpl</type>
   </component>

   <!-- ============================================================================= -->
   <!--                     M A I L      S E R V I C E                                -->
   <!-- ============================================================================= -->
   <component>
      <key>org.exoplatform.services.mail.MailService</key>
      <type>org.exoplatform.services.mail.impl.MailServiceImpl</type>
      <init-params>
         <properties-param>
            <name>config</name>
            <property name="mail.smtp.host" value="PC01" />
            <property name="mail.smtp.port" value="25" />
            <property name="mail.transport.protocol" value="smtp" />

            <property name="mail.smtp.auth" value="false" />
            <property name="mail.smtp.auth.username" value="exo" />
            <property name="mail.smtp.auth.password" value="exo" />
         </properties-param>
      </init-params>
   </component>

   <component>
      <key>org.exoplatform.services.naming.InitialContextInitializer</key>
      <type>org.exoplatform.services.naming.InitialContextInitializer</type>
      <init-params>
         <properties-param>
            <name>default-properties</name>
            <description>Default initial context properties</description>
            <property name="java.naming.factory.initial" value="org.exoplatform.services.naming.SimpleContextFactory" />
         </properties-param>
      </init-params>
   </component>

</configuration>
