blob: e2e58fc455d92475d4a59b3dbcb079593841219d [file] [log] [blame]
/**************************************************************
*
* 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.
*
*************************************************************/
#ifndef __com_sun_star_task_XPasswordContainer_idl__
#define __com_sun_star_task_XPasswordContainer_idl__
#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
#endif
#ifndef __com_sun_star_task_UrlRecord_idl__
#include <com/sun/star/task/UrlRecord.idl>
#endif
#ifndef __com_sun_star_task_XInteractionHandler_idl__
#include <com/sun/star/task/XInteractionHandler.idl>
#endif
//=============================================================================
module com { module sun { module star { module task {
//=============================================================================
/** Allows to save passwords with URL-pattern, to use them later.
*/
published interface XPasswordContainer : com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
/** Save passwords in to the container.
@param Url URL-pattern, that will be used later to retrieve
passwords.
@param UseName The username.
@param Passwords The password-list.
@param Handler The handler to get superpassword to en/decript passwords
*/
void add( [in] string Url, [in] string UserName, [in] sequence<string> Passwords, [in] XInteractionHandler Handler );
//-------------------------------------------------------------------------
/** Save passwords in to the container, and store them in the file.
@param Url URL-pattern, that will be used later to retrieve
passwords.
@param UseName The username.
@param Passwords The password-list.
@param Handler The handler to get superpassword to en/decript passwords
*/
void addPersistent( [in] string Url, [in] string UserName, [in] sequence<string> Passwords, [in] XInteractionHandler Handler );
//-------------------------------------------------------------------------
/** Find users with passwords for the url pattern.
@param Url URL-pattern to retrieve password for.
@param Handler The handler to get superpassword to en/decript passwords
@returns Best matched url-pattern with user-records list.
*/
UrlRecord find( [in] string Url, [in] XInteractionHandler Handler );
//-------------------------------------------------------------------------
/** Find passwords for the url pattern and username.
@param Url URL-pattern to retrieve passwords for.
@param UserName Username to retrieve passwords for.
@param Handler The handler to get superpassword to en/decript passwords
@returns Best matched url-pattern for the username.
*/
UrlRecord findForName( [in] string Url, [in] string UserName , [in] XInteractionHandler Handler );
//-------------------------------------------------------------------------
/** Remove passwords for the url pattern and username.
@param Url URL-pattern to remove passwords for.
@param UserName Username to remove passwords for.
*/
void remove( [in] string Url, [in] string UserName );
//-------------------------------------------------------------------------
/** Remove passwords for the url pattern and username from the file.
@param Url URL-pattern to remove passwords for.
@param UserName Username to remove passwords for.
*/
void removePersistent( [in] string Url, [in] string UserName );
//-------------------------------------------------------------------------
/** Clean the file.
*/
void removeAllPersistent();
//-------------------------------------------------------------------------
/** Get all records from the file.
@returns List of url-records.
*/
sequence<UrlRecord> getAllPersistent( [in] XInteractionHandler Handler );
};
//=============================================================================
}; }; }; };
#endif