1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_sdbcx_XAuthorizable_idl__ 28#define __com_sun_star_sdbcx_XAuthorizable_idl__ 29 30#ifndef __com_sun_star_uno_XInterface_idl__ 31#include <com/sun/star/uno/XInterface.idl> 32#endif 33 34#ifndef __com_sun_star_sdbc_SQLException_idl__ 35#include <com/sun/star/sdbc/SQLException.idl> 36#endif 37 38 module com { module sun { module star { module sdbcx { 39 40/** is used for accessing and setting the permissions of a user for a database 41 object. 42 @see com::sun::star::sdbcx::PrivilegeObject 43 */ 44published interface XAuthorizable: com::sun::star::uno::XInterface 45{ 46 47 /** retrieves the permissions for a specific object. 48 @param objName 49 the name of the object 50 @param objType 51 a value of 52 <type scope="com::sun::star::sdbcx">PrivilegeObject</Type> 53 @returns 54 the privileges 55 @throws com::sun::star::sdbc::SQLException 56 if a database access error occurs. 57 */ 58 long getPrivileges([in]string objName, [in]long objType) raises 59 (com::sun::star::sdbc::SQLException); 60 //------------------------------------------------------------------------- 61 62 /** retrieves the permissions for a specific object, which could be granted 63 to other users and groups. 64 @param objName 65 the name of the object 66 @param objType 67 a value of 68 <type scope="com::sun::star::sdbcx">PrivilegeObject</Type> 69 @returns 70 the grant privileges 71 @throws com::sun::star::sdbc::SQLException 72 if a database access error occurs. 73 */ 74 long getGrantablePrivileges([in]string objName, [in]long objType) raises 75 (com::sun::star::sdbc::SQLException); 76 //------------------------------------------------------------------------- 77 78 /** adds additional permissions for a specific object. 79 @param objName 80 the name of the object 81 @param objType 82 a value from the <type scope="com::sun::star::sdbcx">PrivilegeObject</type> constants group 83 @throws com::sun::star::sdbc::SQLException 84 if a database access error occurs. 85 */ 86 void grantPrivileges([in]string objName, [in]long objType, 87 [in]long objPrivileges) raises 88 (com::sun::star::sdbc::SQLException); 89 //------------------------------------------------------------------------- 90 91 /** removes permissions for a specific object from a group or user. 92 @param objName 93 the name of the object 94 @param objType 95 a value from the <type scope="com::sun::star::sdbcx">PrivilegeObject</type> constants group 96 @throws com::sun::star::sdbc::SQLException 97 if a database access error occurs. 98 */ 99 void revokePrivileges([in]string objName, [in]long objType, 100 [in]long objPrivileges) raises 101 (com::sun::star::sdbc::SQLException); 102}; 103 104//============================================================================= 105 106}; }; }; }; 107 108/*=========================================================================== 109===========================================================================*/ 110#endif 111