<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
    <description>Content Component Services</description>
    <vendor>OFBiz</vendor>

    <!-- Email Related Services -->
    <service name="sendMailInterface" engine="interface" location="" invoke="">
        <description>Interface service for mail services.  contentType defaults to "text/html", sendType defaults to
            "mail.smtp.host".  sendVia must be specified if sendType is different.  Configured in general.properties</description>
        <attribute name="sendTo" type="String" mode="IN" optional="true"/>
        <attribute name="sendCc" type="String" mode="IN" optional="true"/>
        <attribute name="sendBcc" type="String" mode="IN" optional="true"/>
        <attribute name="sendFrom" type="String" mode="IN" optional="true"/>
        <attribute name="authUser" type="String" mode="IN" optional="true"/>
        <attribute name="authPass" type="String" mode="IN" optional="true"/>
        <attribute name="port" type="String" mode="IN" optional="true"/>
        <attribute name="sendVia" type="String" mode="IN" optional="true"/>
        <attribute name="sendType" type="String" mode="IN" optional="true"/>        
        <attribute name="socketFactoryClass" type="String" mode="IN" optional="true"/>
        <attribute name="socketFactoryPort" type="String" mode="IN" optional="true"/>
        <attribute name="socketFactoryFallback" type="String" mode="IN" optional="true"/>        
        <attribute name="sendFailureNotification" mode="IN" type="Boolean" optional="true"/>
        <attribute name="sendPartial" mode="IN" type="Boolean" optional="true"/>
        <attribute name="startTLSEnabled" mode="IN" type="Boolean" optional="true"/>
        <attribute name="subject" type="String" mode="INOUT" optional="true" allow-html="safe"/>
        <attribute name="contentType" type="String" mode="INOUT" optional="true"/>
        <attribute name="partyId" type="String" mode="INOUT" optional="true"/>
        <attribute name="messageId" type="String" mode="INOUT" optional="true"/>
        <attribute name="emailType" type="String" mode="INOUT" optional="true"/>
        <attribute name="orderId" type="String" mode="INOUT" optional="true"/>
        <attribute name="custRequestId" type="String" mode="INOUT" optional="true"/>
        <attribute name="messageWrapper" type="org.apache.ofbiz.service.mail.MimeMessageWrapper" mode="OUT" optional="true"/><!-- mail can be disabled in general.properties so no output -->
        <!--  used for parsing and ECAs -->
        <attribute name="communicationEventId" type="String" mode="INOUT" optional="true"/>
    </service>
    <service name="sendMailOnePartInterface"  engine="interface" location="" invoke="">
        <description>Interface service for sendMail* services.</description>
        <implements service="sendMailInterface"/>
        <attribute name="body" type="String" mode="INOUT" optional="false" allow-html="any"/>
        <override name="contentType" mode="INOUT"/>
        <override name="subject" mode="INOUT" optional="false"/>
        <override name="emailType" type="String" mode="INOUT" optional="true"/>
        <override name="sendTo" optional="false"/><!-- service will give an NPE when not provided -->
    </service>
    <service name="sendMailMultiPartInterface"  engine="interface" location="" invoke="">
        <description>Interface service for sendMailMultiPart* services</description>
        <implements service="sendMailInterface"/>
        <attribute name="bodyParts" type="java.util.List" mode="INOUT" optional="false"/>
        <attribute name="subject" type="String" mode="INOUT" optional="false"/>
        <override name="contentType" mode="INOUT"/>
    </service>
    <service name="sendMail" engine="java"
        location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMail">
        <description>Send E-Mail Service.  partyId and communicationEventId aren't used by sendMail
            but are passed down to storeEmailAsCommunication during the SECA chain.  See sendMailInterface for more comments.</description>
        <implements service="sendMailOnePartInterface"/>
    </service>
    <service name="sendMailHiddenInLog" engine="java" hideResultInLog="true"
        location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMail">
        <description>Send E-Mail Service.  partyId and communicationEventId aren't used by sendMail
            but are passed down to storeEmailAsCommunication during the SECA chain.  See sendMailInterface for more comments.</description>
        <implements service="sendMailOnePartInterface"/>
        <attribute name="hideInLog" type="Boolean" mode="IN" optional="true"/>                
    </service>
    <service name="sendMailMultiPart" engine="java"
        location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMail">
        <description>Send Multi-Part E-Mail Service</description>
        <implements service="sendMailMultiPartInterface"/>
    </service>
    <service name="sendMailMultiPartHiddenInLog" engine="java" hideResultInLog="true"
        location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMail">
        <description>Send Multi-Part E-Mail Service</description>
        <implements service="sendMailMultiPartInterface"/>
    </service>
    <service name="sendMailFromUrl" engine="java"
            location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMailFromUrl">
        <description>Send E-Mail From URL Service</description>
        <implements service="sendMailInterface"/>
        <attribute name="bodyUrl" type="String" mode="IN" optional="false"/>
        <attribute name="bodyUrlParameters" type="Map" mode="IN" optional="true"/>
        <attribute name="body" type="String" mode="OUT" optional="false" allow-html="any"/>
    </service>
    <service name="sendMailFromScreenInterface"  engine="interface" location="" invoke="">
        <description>Interface service for E-Mail sent From Screen Widget</description>
        <implements service="sendMailInterface"/>
        <attribute name="bodyText" type="String" mode="IN" optional="true" allow-html="any"/>
        <attribute name="bodyScreenUri" type="String" mode="IN" optional="true"/>
        <attribute name="xslfoAttachScreenLocation" type="String" mode="IN" optional="true"/>
        <attribute name="attachmentName" type="String" mode="IN" optional="true"/>
        <attribute name="xslfoAttachScreenLocationList" type="List" mode="IN" optional="true"/>
        <attribute name="attachmentNameList" type="List" mode="IN" optional="true"/>
        <attribute name="bodyParameters" type="Map" mode="IN" optional="true"/>
        <!-- FIXME: webSiteId should not be optional, async service can't construct valid URLs without it -->
        <attribute name="webSiteId" type="String" mode="IN" optional="true"/>
        <attribute name="subject" type="String" mode="OUT" optional="true"/>
        <attribute name="body" type="String" mode="OUT" optional="false"/>
    </service>
    <service name="sendMailFromScreen" max-retry="3" engine="java"
        location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMailFromScreen">
        <description>Send E-Mail From Screen Widget Service</description>
        <implements service="sendMailFromScreenInterface"/>
        <attribute name="hideInLog" type="Boolean" mode="IN" optional="true"/>
    </service>
    <service name="sendMailHiddenInLogFromScreen" max-retry="3" engine="java" hideResultInLog="true"
        location="org.apache.ofbiz.common.email.EmailServices" invoke="sendMailHiddenInLogFromScreen">
        <description>Send E-Mail hidden in log (password, etc.) From Screen Widget Service</description>
        <implements service="sendMailFromScreenInterface"/>
    </service>
    <service name="sendMailFromTemplateSetting" engine="simple"
        location="component://common/minilang/email/EmailServices.xml" invoke="sendMailFromTemplateSetting">
        <description>Send Email From Email Template Setting Service</description>
        <implements service="sendMailInterface"/>
        <attribute name="emailTemplateSettingId" type="String" mode="IN" optional="false"/>
        <attribute name="partyIdTo" type="String" mode="IN" optional="true"/>
        <attribute name="bodyText" type="String" mode="IN" optional="true" allow-html="any"/>
        <attribute name="attachmentName" type="String" mode="IN" optional="true"/>
        <attribute name="bodyParameters" type="Map" mode="IN" optional="true"/>
        <attribute name="webSiteId" type="String" mode="IN" optional="true"/>
        <attribute name="body" type="String" mode="OUT" optional="true"/>
    </service>

    <service name="prepareNotificationInterface" engine="interface"
            location="" invoke="">
        <description>Send Template Based Notification Service</description>
        <implements service="sendMailInterface"/>
        <attribute name="body" type="String" mode="INOUT" optional="true" allow-html="any"/>
        <attribute name="baseUrl" type="String" mode="IN" optional="true" allow-html="safe"/>
        <attribute name="templateName" type="String" mode="IN" optional="false"/>
        <attribute name="templateData" type="Map" mode="IN" optional="true"/>
        <attribute name="webSiteId" type="String" mode="IN" optional="true"/>
    </service>
    <service name="sendNotificationInterface" engine="interface"
            location="" invoke="">
        <description>Send Template Based Notification Service</description>
        <implements service="prepareNotificationInterface"/>
        <attribute name="body" type="String" mode="IN" optional="true" allow-html="any"/>
        <attribute name="templateName" type="String" mode="IN" optional="false"/>
        <attribute name="templateData" type="Map" mode="IN" optional="true"/>
        <attribute name="webSiteId" type="String" mode="IN" optional="true"/>
    </service>
    <service name="sendGenericNotificationEmail" engine="java"
            location="org.apache.ofbiz.common.email.NotificationServices" invoke="sendNotification">
        <description>Generic Template Based Notification Service</description>
        <implements service="sendNotificationInterface"/>
    </service>
    <!-- this service does not seem to exist, is not in the EmailServices.java file
    <service name="storeForwardedEmail" engine="java"
            location="org.apache.ofbiz.common.email.EmailServices" invoke="storeForwardedEmail" auth="true">
        <description>Process incoming email. Try to determine partyIdFrom from email address.</description>
        <implements service="mailProcessInterface"/>
    </service>
    -->
    <service name="createEmailTemplateSetting" engine="entity-auto" invoke="create" default-entity-name="EmailTemplateSetting" auth="true">
        <description>Create a EmailTemplateSetting record</description>
        <auto-attributes include="pk" mode="INOUT" optional="true"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
    </service>
    <service name="updateEmailTemplateSetting" engine="entity-auto" invoke="update" default-entity-name="EmailTemplateSetting" auth="true">
        <description>Update a EmailTemplateSetting record</description>
        <auto-attributes include="pk" mode="IN"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
    </service>
    <service name="deleteEmailTemplateSetting" engine="entity-auto" invoke="delete" default-entity-name="EmailTemplateSetting" auth="true">
        <description>Delete a EmailTemplateSetting record</description>
        <auto-attributes include="pk" mode="IN"/>
    </service>
</services>
