1*ec61c6edSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*ec61c6edSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*ec61c6edSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*ec61c6edSAndrew Rist  * distributed with this work for additional information
6*ec61c6edSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*ec61c6edSAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*ec61c6edSAndrew Rist  * "License"); you may not use this file except in compliance
9*ec61c6edSAndrew Rist  * with the License.  You may obtain a copy of the License at
10*ec61c6edSAndrew Rist  *
11*ec61c6edSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*ec61c6edSAndrew Rist  *
13*ec61c6edSAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*ec61c6edSAndrew Rist  * software distributed under the License is distributed on an
15*ec61c6edSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*ec61c6edSAndrew Rist  * KIND, either express or implied.  See the License for the
17*ec61c6edSAndrew Rist  * specific language governing permissions and limitations
18*ec61c6edSAndrew Rist  * under the License.
19*ec61c6edSAndrew Rist  *
20*ec61c6edSAndrew Rist  *************************************************************/
21*ec61c6edSAndrew Rist 
22*ec61c6edSAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef _SEINITIALIZERIMPL_HXX
25cdf0e10cSrcweir #define _SEINITIALIZERIMPL_HXX
26cdf0e10cSrcweir 
27cdf0e10cSrcweir #include <com/sun/star/xml/crypto/XXMLSecurityContext.hpp>
28cdf0e10cSrcweir #ifndef _COM_SUN_STAR_XML_CRYPTO_SEINITIALIZER_HPP_
29cdf0e10cSrcweir #include <com/sun/star/xml/crypto/XSEInitializer.hpp>
30cdf0e10cSrcweir #endif
31cdf0e10cSrcweir #include <com/sun/star/lang/XUnoTunnel.hpp>
32cdf0e10cSrcweir #include <com/sun/star/lang/XServiceInfo.hpp>
33cdf0e10cSrcweir #include <com/sun/star/lang/XMultiServiceFactory.hpp>
34cdf0e10cSrcweir #include <cppuhelper/implbase2.hxx>
35cdf0e10cSrcweir 
36cdf0e10cSrcweir #include <libxml/tree.h>
37cdf0e10cSrcweir 
38cdf0e10cSrcweir class SEInitializer_MSCryptImpl : public cppu::WeakImplHelper2
39cdf0e10cSrcweir <
40cdf0e10cSrcweir 	com::sun::star::xml::crypto::XSEInitializer,
41cdf0e10cSrcweir 	com::sun::star::lang::XServiceInfo
42cdf0e10cSrcweir >
43cdf0e10cSrcweir /****** SEInitializer_MSCryptImpl.hxx/CLASS SEInitializer_MSCryptImpl ***********
44cdf0e10cSrcweir  *
45cdf0e10cSrcweir  *   NAME
46cdf0e10cSrcweir  *	SEInitializer_MSCryptImpl -- Class to initialize a Security Context
47cdf0e10cSrcweir  *	instance
48cdf0e10cSrcweir  *
49cdf0e10cSrcweir  *   FUNCTION
50cdf0e10cSrcweir  *	Use this class to initialize a XmlSec based Security Context
51cdf0e10cSrcweir  *	instance. After this instance is used up, use this class to free this
52cdf0e10cSrcweir  *	instance.
53cdf0e10cSrcweir  *
54cdf0e10cSrcweir  *   HISTORY
55cdf0e10cSrcweir  *	05.01.2004 -	Interface supported: XSEInitializer, XSEInitializer
56cdf0e10cSrcweir  *
57cdf0e10cSrcweir  *   AUTHOR
58cdf0e10cSrcweir  *	Michael Mi
59cdf0e10cSrcweir  *	Email: michael.mi@sun.com
60cdf0e10cSrcweir  ******************************************************************************/
61cdf0e10cSrcweir {
62cdf0e10cSrcweir private:
63cdf0e10cSrcweir 	com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > mxMSF;
64cdf0e10cSrcweir 
65cdf0e10cSrcweir public:
66cdf0e10cSrcweir 	SEInitializer_MSCryptImpl(const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > &rxMSF);
67cdf0e10cSrcweir 	virtual ~SEInitializer_MSCryptImpl();
68cdf0e10cSrcweir 
69cdf0e10cSrcweir 	/* XSEInitializer */
70cdf0e10cSrcweir 	virtual com::sun::star::uno::Reference<
71cdf0e10cSrcweir 		com::sun::star::xml::crypto::XXMLSecurityContext >
72cdf0e10cSrcweir 		SAL_CALL createSecurityContext( const rtl::OUString& certDB )
73cdf0e10cSrcweir 		throw (com::sun::star::uno::RuntimeException);
74cdf0e10cSrcweir 
75cdf0e10cSrcweir 	virtual void SAL_CALL freeSecurityContext( const com::sun::star::uno::Reference<
76cdf0e10cSrcweir 		com::sun::star::xml::crypto::XXMLSecurityContext >& securityContext )
77cdf0e10cSrcweir 		throw (com::sun::star::uno::RuntimeException);
78cdf0e10cSrcweir 
79cdf0e10cSrcweir 	/* XServiceInfo */
80cdf0e10cSrcweir 	virtual rtl::OUString SAL_CALL getImplementationName(  )
81cdf0e10cSrcweir 		throw (com::sun::star::uno::RuntimeException);
82cdf0e10cSrcweir 
83cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL supportsService( const rtl::OUString& ServiceName )
84cdf0e10cSrcweir 		throw (com::sun::star::uno::RuntimeException);
85cdf0e10cSrcweir 
86cdf0e10cSrcweir 	virtual com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(  )
87cdf0e10cSrcweir 		throw (com::sun::star::uno::RuntimeException);
88cdf0e10cSrcweir };
89cdf0e10cSrcweir 
90cdf0e10cSrcweir rtl::OUString SEInitializer_MSCryptImpl_getImplementationName()
91cdf0e10cSrcweir 	throw ( com::sun::star::uno::RuntimeException );
92cdf0e10cSrcweir 
93cdf0e10cSrcweir sal_Bool SAL_CALL SEInitializer_MSCryptImpl_supportsService( const rtl::OUString& ServiceName )
94cdf0e10cSrcweir 	throw ( com::sun::star::uno::RuntimeException );
95cdf0e10cSrcweir 
96cdf0e10cSrcweir com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL SEInitializer_MSCryptImpl_getSupportedServiceNames(  )
97cdf0e10cSrcweir 	throw ( com::sun::star::uno::RuntimeException );
98cdf0e10cSrcweir 
99cdf0e10cSrcweir com::sun::star::uno::Reference< com::sun::star::uno::XInterface >
100cdf0e10cSrcweir SAL_CALL SEInitializer_MSCryptImpl_createInstance( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > & rSMgr)
101cdf0e10cSrcweir 	throw ( com::sun::star::uno::Exception );
102cdf0e10cSrcweir 
103cdf0e10cSrcweir #endif
104cdf0e10cSrcweir 
105