1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_xml_crypto_xciphercontext_idl_ 24#define __com_sun_star_xml_crypto_xciphercontext_idl_ 25 26#ifndef __com_sun_star_uno_XInterface_idl__ 27#include <com/sun/star/uno/XInterface.idl> 28#endif 29 30#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 31#include <com/sun/star/lang/IllegalArgumentException.idl> 32#endif 33 34#ifndef __com_sun_star_lang_DisposedException_idl__ 35#include <com/sun/star/lang/DisposedException.idl> 36#endif 37 38//============================================================================ 39 40 module com { module sun { module star { module xml { module crypto { 41 42//============================================================================ 43/** This interface allows to encrypt/decrypt data using the cipher context. 44 <p> 45 The algorithm as well as encryption data are specified on object creation. 46 </p> 47 48 @see <type>XCipherContextSupplier</type> 49 @since OOo 3.4 50 */ 51interface XCipherContext : com::sun::star::uno::XInterface 52{ 53 //------------------------------------------------------------------------ 54 /** encrypts/decrypts the data using the cipher. 55 <p> 56 Please have in mind, the cipher object state might depend from the 57 already encrypted/decrypted data ( it depends from the used 58 algorithm ). 59 </p> 60 61 <p> 62 Whether the object does encryption or decryption is specified by 63 creation of the object. 64 </p> 65 66 @param aData 67 data that should be encrypted/decrypted 68 */ 69 sequence<byte> convertWithCipherContext( [in] sequence< byte > aData ) 70 raises( ::com::sun::star::lang::IllegalArgumentException, 71 ::com::sun::star::lang::DisposedException ); 72 73 //------------------------------------------------------------------------ 74 /** finalizes cipher and disposes context. 75 */ 76 sequence<byte> finalizeCipherContextAndDispose() 77 raises( ::com::sun::star::lang::DisposedException ); 78}; 79 80//============================================================================ 81 82}; }; }; }; }; 83 84#endif 85 86