1*ae77b8caSAriel Constenla-Haile/**************************************************************
2*ae77b8caSAriel Constenla-Haile *
3*ae77b8caSAriel Constenla-Haile * Licensed to the Apache Software Foundation (ASF) under one
4*ae77b8caSAriel Constenla-Haile * or more contributor license agreements.  See the NOTICE file
5*ae77b8caSAriel Constenla-Haile * distributed with this work for additional information
6*ae77b8caSAriel Constenla-Haile * regarding copyright ownership.  The ASF licenses this file
7*ae77b8caSAriel Constenla-Haile * to you under the Apache License, Version 2.0 (the
8*ae77b8caSAriel Constenla-Haile * "License"); you may not use this file except in compliance
9*ae77b8caSAriel Constenla-Haile * with the License.  You may obtain a copy of the License at
10*ae77b8caSAriel Constenla-Haile *
11*ae77b8caSAriel Constenla-Haile *   http://www.apache.org/licenses/LICENSE-2.0
12*ae77b8caSAriel Constenla-Haile *
13*ae77b8caSAriel Constenla-Haile * Unless required by applicable law or agreed to in writing,
14*ae77b8caSAriel Constenla-Haile * software distributed under the License is distributed on an
15*ae77b8caSAriel Constenla-Haile * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*ae77b8caSAriel Constenla-Haile * KIND, either express or implied.  See the License for the
17*ae77b8caSAriel Constenla-Haile * specific language governing permissions and limitations
18*ae77b8caSAriel Constenla-Haile * under the License.
19*ae77b8caSAriel Constenla-Haile *
20*ae77b8caSAriel Constenla-Haile *************************************************************/
21*ae77b8caSAriel Constenla-Haile
22*ae77b8caSAriel Constenla-Haile#ifndef __com_sun_star_system_XMailClient_idl__
23*ae77b8caSAriel Constenla-Haile#define __com_sun_star_system_XMailClient_idl__
24*ae77b8caSAriel Constenla-Haile
25*ae77b8caSAriel Constenla-Haile#include <com/sun/star/uno/XInterface.idl>
26*ae77b8caSAriel Constenla-Haile#include <com/sun/star/lang/IllegalArgumentException.idl>
27*ae77b8caSAriel Constenla-Haile#include <com/sun/star/system/XMailMessage.idl>
28*ae77b8caSAriel Constenla-Haile#include <com/sun/star/system/MailClientFlags.idl>
29*ae77b8caSAriel Constenla-Haile
30*ae77b8caSAriel Constenla-Hailemodule com { module sun { module star { module system {
31*ae77b8caSAriel Constenla-Haile
32*ae77b8caSAriel Constenla-Haile/** Specifies an interface for creating and sending email messages
33*ae77b8caSAriel Constenla-Haile    through a mail client.
34*ae77b8caSAriel Constenla-Haile */
35*ae77b8caSAriel Constenla-Haileinterface XMailClient
36*ae77b8caSAriel Constenla-Haile{
37*ae77b8caSAriel Constenla-Haile    /** Create a mail message object that implements the interface
38*ae77b8caSAriel Constenla-Haile        <type>XMailMessage</type>.
39*ae77b8caSAriel Constenla-Haile
40*ae77b8caSAriel Constenla-Haile        @returns
41*ae77b8caSAriel Constenla-Haile            An object that implements the <type>XMailMessage</type> interface.
42*ae77b8caSAriel Constenla-Haile    */
43*ae77b8caSAriel Constenla-Haile    XMailMessage createMailMessage();
44*ae77b8caSAriel Constenla-Haile
45*ae77b8caSAriel Constenla-Haile    /** Sends a given mail message object that implements the interface
46*ae77b8caSAriel Constenla-Haile        <type>XMailMessage</type>.
47*ae77b8caSAriel Constenla-Haile
48*ae77b8caSAriel Constenla-Haile        @param xMailMessage
49*ae77b8caSAriel Constenla-Haile            Specifies a configured mail object to be sent.
50*ae77b8caSAriel Constenla-Haile
51*ae77b8caSAriel Constenla-Haile        @param aFlag
52*ae77b8caSAriel Constenla-Haile            Specifies different flags that control the send process.
53*ae77b8caSAriel Constenla-Haile            <p>Possible flags are specified in <type>MailClientFlags</type>.</p>
54*ae77b8caSAriel Constenla-Haile            <p>If the flag <const scope="com::sun::star::system">MailClientFlags::NO_USER_INTERFACE</const>
55*ae77b8caSAriel Constenla-Haile            is specified, a recipient address must have been specified for the
56*ae77b8caSAriel Constenla-Haile            given <type>XMailMessage</type>.</p>
57*ae77b8caSAriel Constenla-Haile
58*ae77b8caSAriel Constenla-Haile        @throws com::sun::star::lang::IllegalArgumentException
59*ae77b8caSAriel Constenla-Haile            <ul>
60*ae77b8caSAriel Constenla-Haile                <li>If invalid or excluding flags have been specified.</li>
61*ae77b8caSAriel Constenla-Haile                <li>The flag <const scope="com::sun::star::system">MailClientFlags::NO_USER_INTERFACE</const>
62*ae77b8caSAriel Constenla-Haile                is specified and no recipient address has been specified for the
63*ae77b8caSAriel Constenla-Haile                given <type>XMailMessage</type> object.</li>
64*ae77b8caSAriel Constenla-Haile                <li>The parameter <type>XMailMessage</type> is <NULL/>.</li>
65*ae77b8caSAriel Constenla-Haile            </ul>
66*ae77b8caSAriel Constenla-Haile
67*ae77b8caSAriel Constenla-Haile        @throws com::sun::star::uno::Exception
68*ae77b8caSAriel Constenla-Haile            if an error occurs while sending the mail.
69*ae77b8caSAriel Constenla-Haile            <p>The <member scope="com::sun::star::uno">Execption::Message</member>
70*ae77b8caSAriel Constenla-Haile            may contain an error description.</p>
71*ae77b8caSAriel Constenla-Haile    */
72*ae77b8caSAriel Constenla-Haile    void sendMailMessage( [in] XMailMessage xMailMessage,
73*ae77b8caSAriel Constenla-Haile                          [in] long aFlag )
74*ae77b8caSAriel Constenla-Haile        raises( ::com::sun::star::lang::IllegalArgumentException,
75*ae77b8caSAriel Constenla-Haile                ::com::sun::star::uno::Exception );
76*ae77b8caSAriel Constenla-Haile};
77*ae77b8caSAriel Constenla-Haile
78*ae77b8caSAriel Constenla-Haile}; }; }; };
79*ae77b8caSAriel Constenla-Haile
80*ae77b8caSAriel Constenla-Haile#endif
81