1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XPasswordContainer.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_task_XPasswordContainer_idl__
31 #define __com_sun_star_task_XPasswordContainer_idl__
33 #ifndef __com_sun_star_uno_XInterface_idl__
34 #include
<com
/sun
/star
/uno
/XInterface.idl
>
37 #ifndef __com_sun_star_task_UrlRecord_idl__
38 #include
<com
/sun
/star
/task
/UrlRecord.idl
>
41 #ifndef __com_sun_star_task_XInteractionHandler_idl__
42 #include
<com
/sun
/star
/task
/XInteractionHandler.idl
>
46 //=============================================================================
48 module com
{ module sun
{ module star
{ module task
{
50 //=============================================================================
51 /** Allows to save passwords with URL-pattern, to use them later.
53 published
interface XPasswordContainer
: com
::sun
::star
::uno
::XInterface
55 //-------------------------------------------------------------------------
56 /** Save passwords in to the container.
58 @param Url URL-pattern, that will be used later to retrieve
61 @param UseName The username.
63 @param Passwords The password-list.
65 @param Handler The handler to get superpassword to en/decript passwords
69 void add
( [in] string Url
, [in] string UserName
, [in] sequence
<string> Passwords
, [in] XInteractionHandler Handler
);
71 //-------------------------------------------------------------------------
72 /** Save passwords in to the container, and store them in the file.
74 @param Url URL-pattern, that will be used later to retrieve
77 @param UseName The username.
79 @param Passwords The password-list.
81 @param Handler The handler to get superpassword to en/decript passwords
85 void addPersistent
( [in] string Url
, [in] string UserName
, [in] sequence
<string> Passwords
, [in] XInteractionHandler Handler
);
87 //-------------------------------------------------------------------------
88 /** Find users with passwords for the url pattern.
90 @param Url URL-pattern to retrieve password for.
92 @param Handler The handler to get superpassword to en/decript passwords
94 @returns Best matched url-pattern with user-records list.
96 UrlRecord find
( [in] string Url
, [in] XInteractionHandler Handler
);
98 //-------------------------------------------------------------------------
99 /** Find passwords for the url pattern and username.
101 @param Url URL-pattern to retrieve passwords for.
103 @param UserName Username to retrieve passwords for.
105 @param Handler The handler to get superpassword to en/decript passwords
107 @returns Best matched url-pattern for the username.
109 UrlRecord findForName
( [in] string Url
, [in] string UserName
, [in] XInteractionHandler Handler
);
111 //-------------------------------------------------------------------------
112 /** Remove passwords for the url pattern and username.
114 @param Url URL-pattern to remove passwords for.
116 @param UserName Username to remove passwords for.
119 void remove
( [in] string Url
, [in] string UserName
);
122 //-------------------------------------------------------------------------
123 /** Remove passwords for the url pattern and username from the file.
125 @param Url URL-pattern to remove passwords for.
127 @param UserName Username to remove passwords for.
130 void removePersistent
( [in] string Url
, [in] string UserName
);
132 //-------------------------------------------------------------------------
135 void removeAllPersistent
();
137 //-------------------------------------------------------------------------
138 /** Get all records from the file.
140 @returns List of url-records.
142 sequence
<UrlRecord
> getAllPersistent
( [in] XInteractionHandler Handler
);
146 //=============================================================================