Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_SECURITY_XACCESSCONTROLLER_HDL
2 : #define INCLUDED_COM_SUN_STAR_SECURITY_XACCESSCONTROLLER_HDL
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/uno/RuntimeException.hdl"
7 : namespace com { namespace sun { namespace star { namespace security { class XAccessControlContext; } } } }
8 : #include "com/sun/star/uno/Exception.hdl"
9 : namespace com { namespace sun { namespace star { namespace security { class XAction; } } } }
10 : #include "com/sun/star/security/AccessControlException.hdl"
11 : #include "com/sun/star/uno/XInterface.hdl"
12 : #include "com/sun/star/uno/Any.h"
13 : #include "com/sun/star/uno/Reference.h"
14 : #include "cppu/macros.hxx"
15 :
16 : namespace com { namespace sun { namespace star { namespace uno { class Type; } } } }
17 :
18 : namespace com { namespace sun { namespace star { namespace security {
19 :
20 0 : class SAL_NO_VTABLE XAccessController : public css::uno::XInterface
21 : {
22 : public:
23 :
24 : // Methods
25 : virtual void SAL_CALL checkPermission( const ::com::sun::star::uno::Any& perm ) = 0;
26 : virtual ::com::sun::star::uno::Any SAL_CALL doRestricted( const ::com::sun::star::uno::Reference< css::security::XAction >& action, const ::com::sun::star::uno::Reference< css::security::XAccessControlContext >& restriction ) = 0;
27 : virtual ::com::sun::star::uno::Any SAL_CALL doPrivileged( const ::com::sun::star::uno::Reference< css::security::XAction >& action, const ::com::sun::star::uno::Reference< css::security::XAccessControlContext >& restriction ) = 0;
28 : virtual ::com::sun::star::uno::Reference< css::security::XAccessControlContext > SAL_CALL getContext() = 0;
29 :
30 : static inline ::com::sun::star::uno::Type const & SAL_CALL static_type(void * = 0);
31 :
32 : protected:
33 0 : ~XAccessController() throw () {} // avoid warnings about virtual members and non-virtual dtor
34 : };
35 :
36 :
37 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::security::XAccessController const *);
38 : } } } }
39 :
40 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(const ::com::sun::star::uno::Reference< css::security::XAccessController > *) SAL_THROW(());
41 :
42 : #endif
|