diff options
Diffstat (limited to 'offapi/com/sun/star/xml/crypto/sax')
26 files changed, 1940 insertions, 0 deletions
diff --git a/offapi/com/sun/star/xml/crypto/sax/Decryptor.idl b/offapi/com/sun/star/xml/crypto/sax/Decryptor.idl new file mode 100644 index 000000000000..6b8323b19893 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/Decryptor.idl @@ -0,0 +1,66 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_decryptor_idl_ +#define __com_sun_star_xml_crypto_sax_decryptor_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +#include <com/sun/star/lang/XInitialization.idl> +#include <com/sun/star/lang/XServiceInfo.idl> + +#include "XReferenceResolvedListener.idl" +#include "XBlockerMonitor.idl" +#include "XDecryptionResultBroadcaster.idl" +#include "XKeyCollector.idl" +#include "XMissionTaker.idl" + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Service of Decryptor + */ +service Decryptor { + interface XReferenceResolvedListener ; + interface XBlockerMonitor ; + interface XDecryptionResultBroadcaster ; + interface XKeyCollector ; + interface XMissionTaker ; + interface com::sun::star::lang::XInitialization ; + interface com::sun::star::lang::XServiceInfo ; +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/Encryptor.idl b/offapi/com/sun/star/xml/crypto/sax/Encryptor.idl new file mode 100644 index 000000000000..82d32ebfbae1 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/Encryptor.idl @@ -0,0 +1,68 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_encryptor_idl_ +#define __com_sun_star_xml_crypto_sax_encryptor_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +#include <com/sun/star/lang/XInitialization.idl> +#include <com/sun/star/lang/XServiceInfo.idl> + +#include "XReferenceResolvedListener.idl" +#include "XReferenceCollector.idl" +#include "XBlockerMonitor.idl" +#include "XEncryptionResultBroadcaster.idl" +#include "XKeyCollector.idl" +#include "XMissionTaker.idl" + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Service of Encryptor + */ +service Encryptor { + interface XReferenceResolvedListener ; + interface XReferenceCollector ; + interface XBlockerMonitor ; + interface XEncryptionResultBroadcaster ; + interface XKeyCollector ; + interface XMissionTaker ; + interface com::sun::star::lang::XInitialization ; + interface com::sun::star::lang::XServiceInfo ; +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/SAXEventKeeper.idl b/offapi/com/sun/star/xml/crypto/sax/SAXEventKeeper.idl new file mode 100644 index 000000000000..0a70aac82c80 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/SAXEventKeeper.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_saxeventkeeper_idl_ +#define __com_sun_star_xml_crypto_sax_saxeventkeeper_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +#include <com/sun/star/xml/sax/XDocumentHandler.idl> +#include <com/sun/star/lang/XInitialization.idl> +#include <com/sun/star/lang/XServiceInfo.idl> + +#include "XSecuritySAXEventKeeper.idl" +#include "XReferenceResolvedBroadcaster.idl" +#include "XSAXEventKeeperStatusChangeBroadcaster.idl" + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Service of SAXEventKeeper + */ +service SAXEventKeeper { + interface XSecuritySAXEventKeeper ; + interface XReferenceResolvedBroadcaster ; + interface XSAXEventKeeperStatusChangeBroadcaster ; + interface com::sun::star::xml::sax::XDocumentHandler ; + interface com::sun::star::lang::XInitialization ; + interface com::sun::star::lang::XServiceInfo ; +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/SignatureCreator.idl b/offapi/com/sun/star/xml/crypto/sax/SignatureCreator.idl new file mode 100644 index 000000000000..6660008a6d04 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/SignatureCreator.idl @@ -0,0 +1,67 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + //i20156 - new file for xmlsecurity module + + /** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_signaturecreator_idl_ +#define __com_sun_star_xml_crypto_sax_signaturecreator_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/lang/XInitialization.idl> +#include <com/sun/star/lang/XServiceInfo.idl> + +#include <com/sun/star/xml/crypto/XUriBinding.idl> + +#include "XReferenceResolvedListener.idl" +#include "XReferenceCollector.idl" +#include "XSignatureCreationResultBroadcaster.idl" +#include "XBlockerMonitor.idl" +#include "XKeyCollector.idl" +#include "XMissionTaker.idl" + +module com { module sun { module star { module xml { module crypto { module sax { + +/* + * * Service of SignatureCreator + */ + +service SignatureCreator +{ + interface XReferenceResolvedListener ; + interface XReferenceCollector ; + interface XSignatureCreationResultBroadcaster ; + interface XBlockerMonitor ; + interface XKeyCollector ; + interface XMissionTaker ; + interface com::sun::star::xml::crypto::XUriBinding; + interface com::sun::star::lang::XInitialization ; + interface com::sun::star::lang::XServiceInfo ; +} ; } ; } ; } ; } ; } ; } ; + +#endif diff --git a/offapi/com/sun/star/xml/crypto/sax/SignatureVerifier.idl b/offapi/com/sun/star/xml/crypto/sax/SignatureVerifier.idl new file mode 100644 index 000000000000..b3355e2e98b4 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/SignatureVerifier.idl @@ -0,0 +1,68 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_signatureverifier_idl_ +#define __com_sun_star_xml_crypto_sax_signatureverifier_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/lang/XInitialization.idl> +#include <com/sun/star/lang/XServiceInfo.idl> + +#include <com/sun/star/xml/crypto/XUriBinding.idl> + +#include "XReferenceResolvedListener.idl" +#include "XReferenceCollector.idl" +#include "XSignatureVerifyResultBroadcaster.idl" +#include "XKeyCollector.idl" +#include "XMissionTaker.idl" + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Service of SignatureVerifier + */ +service SignatureVerifier { + interface XReferenceResolvedListener ; + interface XReferenceCollector ; + interface XSignatureVerifyResultBroadcaster ; + interface XKeyCollector ; + interface XMissionTaker ; + interface com::sun::star::xml::crypto::XUriBinding; + interface com::sun::star::lang::XInitialization ; + interface com::sun::star::lang::XServiceInfo ; +}; + + } ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XBlockerMonitor.idl b/offapi/com/sun/star/xml/crypto/sax/XBlockerMonitor.idl new file mode 100644 index 000000000000..07cec12ad824 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XBlockerMonitor.idl @@ -0,0 +1,60 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xblockermonitor_idl_ +#define __com_sun_star_xml_crypto_sax_xblockermonitor_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Blocker Monitor. + * <p> + * This interface is used to manipulate a blocker. + */ +interface XBlockerMonitor : com::sun::star::uno::XInterface +{ + /** + * Configures the blocker's id. + * + * @param id the keeper id of the blocker + */ + void setBlockerId([in] long id) + raises( com::sun::star::uno::Exception ); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultBroadcaster.idl b/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultBroadcaster.idl new file mode 100644 index 000000000000..be29d4ee49fd --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultBroadcaster.idl @@ -0,0 +1,75 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xdecryptionresultbroadcaster_idl_ +#define __com_sun_star_xml_crypto_sax_xdecryptionresultbroadcaster_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +interface XDecryptionResultListener; + +/** + * Interface of Decryption Result Broadcaster. + * <p> + * This interface is used to manipulate decryption result listener. + */ +interface XDecryptionResultBroadcaster : com::sun::star::uno::XInterface +{ + /** + * Adds a new decryption result listener. + * <p> + * When the decryption is finished, the result information will be sent to this + * listener. + * + * @param listener the listener to be added + */ + void addDecryptionResultListener( + [in] XDecryptionResultListener listener) + raises( com::sun::star::uno::Exception ); + + /** + * Removes a decryption result listener. + * <p> + * After a listener is removed, no result information will be sent to it. + * + * @param listener the listener to be removed + */ + void removeDecryptionResultListener([in] XDecryptionResultListener listener); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultListener.idl b/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultListener.idl new file mode 100644 index 000000000000..e8a420b21f27 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultListener.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xdecryptionresultlistener_idl_ +#define __com_sun_star_xml_crypto_sax_xdecryptionresultlistener_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/crypto/SecurityOperationStatus.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Decryption Result Listener. + * <p> + * This interface is used to receive the result information of a + * decryption operation. + */ +interface XDecryptionResultListener : com::sun::star::uno::XInterface +{ + /** + * Notifies the decryption result. + * + * @param securityId the security id of the encryption to be decrypted + * @param decryptionResult the result information + */ + void decrypted( + [in] long securityId, + [in] com::sun::star::xml::crypto::SecurityOperationStatus decryptionResult); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XElementStackKeeper.idl b/offapi/com/sun/star/xml/crypto/sax/XElementStackKeeper.idl new file mode 100644 index 000000000000..7b3e1a1039bc --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XElementStackKeeper.idl @@ -0,0 +1,94 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xelementstackkeeper_idl_ +#define __com_sun_star_xml_crypto_sax_xelementstackkeeper_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/sax/XDocumentHandler.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * A struct to keep a startElement/endElement SAX event. + */ +struct ElementStackItem +{ + /** + * whether it is a startElement event + */ + boolean isStartElementEvent; + + /** + * the name of the element + */ + string elementName; + + /** + * attribute list for a startElement event + */ + com::sun::star::xml::sax::XAttributeList xAttributes; +}; + +/** + * Manipulate the "key SAX events" in a SAX event stream. + * + * @see XSecController + */ +interface XElementStackKeeper : com::sun::star::uno::XInterface +{ + /** + * Starts to buffer key SAX events. + */ + void start(); + + /** + * Stops buffering key SAX events. + */ + void stop(); + + /** + * Transfers the bufferred key SAX events to a document handler. + * <p> + * All transferred events are removed from the buffer. + * + * @param handler the document to receive key SAX events + * @param includingTheLastEvent whether to transfer the last key SAX event + */ + void retrieve( [in] com::sun::star::xml::sax::XDocumentHandler handler, [in] boolean includingTheLastEvent); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultBroadcaster.idl b/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultBroadcaster.idl new file mode 100644 index 000000000000..7d77439ed710 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultBroadcaster.idl @@ -0,0 +1,75 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xencryptionresultbroadcaster_idl_ +#define __com_sun_star_xml_crypto_sax_xencryptionresultbroadcaster_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +interface XEncryptionResultListener; + +/** + * Interface of Encryption Result Broadcaster. + * <p> + * This interface is used to manipulate encryption result listener. + */ +interface XEncryptionResultBroadcaster : com::sun::star::uno::XInterface +{ + /** + * Adds a new encryption result listener. + * <p> + * When the encryption is finished, the result information will be sent to this + * listener. + * + * @param listener the listener to be added + */ + void addEncryptionResultListener( + [in] XEncryptionResultListener listener) + raises( com::sun::star::uno::Exception ); + + /** + * Removes an encryption result listener. + * <p> + * After a listener is removed, no result information will be sent to it. + * + * @param listener the listener to be removed + */ + void removeEncryptionResultListener([in] XEncryptionResultListener listener); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultListener.idl b/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultListener.idl new file mode 100644 index 000000000000..0eca5a84d413 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultListener.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xencryptionresultlistener_idl_ +#define __com_sun_star_xml_crypto_sax_xencryptionresultlistener_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/crypto/SecurityOperationStatus.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Encryption Result Listener. + * <p> + * This interface is used to receive the result information of an + * encryption operation. + */ +interface XEncryptionResultListener : com::sun::star::uno::XInterface +{ + /** + * Notifies the encryption result. + * + * @param securityId the security id of the encryption + * @param encryptionResult the result information + */ + void encrypted( + [in] long securityId, + [in] com::sun::star::xml::crypto::SecurityOperationStatus encryptionResult); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XKeyCollector.idl b/offapi/com/sun/star/xml/crypto/sax/XKeyCollector.idl new file mode 100644 index 000000000000..a7bc3c5c807f --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XKeyCollector.idl @@ -0,0 +1,61 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xkeycollector_idl_ +#define __com_sun_star_xml_crypto_sax_xkeycollector_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Key Collector. + * <p> + * This interface is used to manipulate key materials. + */ +interface XKeyCollector : com::sun::star::uno::XInterface +{ + /** + * Set the keeper id of the key element. + * + * @param id the keeper id of the key element. If the id is 0, then it represents + * that this security entity has included its key material internally. + */ + void setKeyId([in] long id) + raises( com::sun::star::uno::Exception ); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl b/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl new file mode 100644 index 000000000000..6f902a867b65 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl @@ -0,0 +1,60 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xmissiontaker_idl_ +#define __com_sun_star_xml_crypto_sax_xmissiontaker_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Mission Taker. + * <p> + * This interface is used to controll a mission. + */ +interface XMissionTaker : com::sun::star::uno::XInterface +{ + /** + * Forces a mission to make an end. + * + * @return <true/> if the mission is completed successfully, <false/> + * otherwise. + */ + boolean endMission(); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XReferenceCollector.idl b/offapi/com/sun/star/xml/crypto/sax/XReferenceCollector.idl new file mode 100644 index 000000000000..10e79fbcb58d --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XReferenceCollector.idl @@ -0,0 +1,70 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsignaturecollector_idl_ +#define __com_sun_star_xml_crypto_sax_xsignaturecollector_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Signature Collector. + * <p> + * This interface is used to control collecting a signature. + */ +interface XReferenceCollector : com::sun::star::uno::XInterface +{ + /** + * Sets the reference count of the signature. + * + * @param count the reference count of the signature + */ + void setReferenceCount([in] long count) + raises( com::sun::star::uno::Exception ); + + /** + * Set the keeper id of the element colllector of the + * referenced element. + * + * @param id the keeper id of the element collector, + * which is collecting a referenced element + */ + void setReferenceId([in] long id) + raises( com::sun::star::uno::Exception ); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedBroadcaster.idl b/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedBroadcaster.idl new file mode 100644 index 000000000000..dba649deea7c --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedBroadcaster.idl @@ -0,0 +1,82 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xreferenceresolvedbroadcaster_idl_ +#define __com_sun_star_xml_crypto_sax_xreferenceresolvedbroadcaster_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +interface XReferenceResolvedListener; + +/** + * Interface of Reference Resolved Broadcaster. + * <p> + * This interface is used to manipulate reference resolved listener. + */ +interface XReferenceResolvedBroadcaster : com::sun::star::uno::XInterface +{ + /** + * Adds a new reference resolved listener for a element collector. + * <p> + * When the element collector has completely collected that element, + * this listener will receive a notification. + * + * @param referenceId the id of the element collector for which + * the new listener is added + * @param listener the listener to be added + */ + void addReferenceResolvedListener( + [in] long referenceId, + [in] XReferenceResolvedListener listener); + + /** + * Removes a listener from a element collector. + * <p> + * When a listener is removed, it will not receive notification when + * collection completes. + * + * @param referenceId the id of the element collector from which + * the listener is removed + * @param listener the listener to be removed + */ + void removeReferenceResolvedListener( + [in] long referenceId, + [in] XReferenceResolvedListener listener); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedListener.idl b/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedListener.idl new file mode 100644 index 000000000000..485f6090725b --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedListener.idl @@ -0,0 +1,61 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xreferenceresolvedlistener_idl_ +#define __com_sun_star_xml_crypto_sax_xreferenceresolvedlistener_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Reference Resolved Listener. + * <p> + * This interface is used to receive the collection completion notification for a element + * collector. + */ +interface XReferenceResolvedListener : com::sun::star::uno::XInterface +{ + /** + * Notifies an element has been collected by an element collector. + * + * @param referenceId the id of the element collector + */ + void referenceResolved([in] long referenceId) + raises( com::sun::star::uno::Exception ); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl new file mode 100644 index 000000000000..20f8a0289f5c --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl @@ -0,0 +1,147 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsaxeventkeeper_idl_ +#define __com_sun_star_xml_crypto_sax_xsaxeventkeeper_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/sax/XDocumentHandler.idl> + +#include <com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl> +#include <com/sun/star/xml/wrapper/XXMLElementWrapper.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of SAX Event Keeper. + * <p> + * This interface is used to manipulate element marks in a SAX event stream. + * <p> + * There are two kinds of element mark, one is element collector, which is + * used to collect a particular element from the SAX event stream; the other + * is blocker, which is used to block the SAX event stream. + */ +interface XSAXEventKeeper : com::sun::star::uno::XInterface +{ + /** + * Adds a new element collector on the next element in the SAX event + * stream. + * + * @return the keeper id of the new element collector + */ + long addElementCollector(); + + /** + * Removes an element collector. + * + * @param id the keeper id of the element collector to be removed + */ + void removeElementCollector([in] long id); + + /** + * Adds a new blocker on the next element in the SAX event stream. + * <p> + * No SAX event starting from the next element will be forwarded until + * this blocker is removed. + * + * @return the keeper id of the new blocker + */ + long addBlocker(); + + /** + * Removes a blocker + * + * @param id the keeper id of the blocker to be removed + */ + void removeBlocker([in] long id); + + /** + * Checks whether the SAX event stream is blocking. + * + * @return <code>true</code> if blocking, <code>false</code> otherwise + */ + boolean isBlocking(); + + /** + * Gets the element of an element mark. + * + * @param id the keeper id of the element mark, it can be a element + * collector or a blocker + */ + com::sun::star::xml::wrapper::XXMLElementWrapper getElement([in] long id); + + /** + * Sets the element of an element mark. + * <p> + * When an element is replaced outside of this interface, then uses this method + * can restore the link between an element mark and its working element. + * + * @param id the keeper id of the element mark to be set + * @param aElement the new element for this element mark. + */ + void setElement( + [in] long id, + [in] com::sun::star::xml::wrapper::XXMLElementWrapper aElement); + + /** + * Sets the next document handler in the SAX chain. + * <p> + * This handler will receive SAX events forwarded by the SAXEventKeeper. + * + * @param nextHandler the next handler in the SAX chain + * @return the old next handler + */ + com::sun::star::xml::sax::XDocumentHandler setNextHandler( + [in] com::sun::star::xml::sax::XDocumentHandler nextHandler); + + /** + * Prints information about all bufferred elements. + * + * @return a tree-style string including all buffer informtion + */ + string printBufferNodeTree(); + + /** + * Gets the element which current blocking happens. + * <p> + * This element is the working element of the first blocker in tree order. + * + * @return the current blocking element + */ + com::sun::star::xml::wrapper::XXMLElementWrapper getCurrentBlockingNode(); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeBroadcaster.idl b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeBroadcaster.idl new file mode 100644 index 000000000000..87991d07c7f9 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeBroadcaster.idl @@ -0,0 +1,76 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsaxeventkeeperstatuschangebroadcaster_idl_ +#define __com_sun_star_xml_crypto_sax_xsaxeventkeeperstatuschangebroadcaster_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +interface XSAXEventKeeperStatusChangeListener; + +/** + * Interface of SAXEventKeeper Status Change Broadcaster. + * <p> + * This interface is used to manipulate SAXEventKeeper status change listener. + */ +interface XSAXEventKeeperStatusChangeBroadcaster : com::sun::star::uno::XInterface +{ + /** + * Adds a new status change listener. + * <p> + * When the SAXEventKeeper's status changes, the listener will receive a + * notification. + * + * @param listener the listener to be added + */ + void addSAXEventKeeperStatusChangeListener( + [in] XSAXEventKeeperStatusChangeListener listener); + + /** + * Removes a status change listener. + * <p> + * After a listener is removed, no status change notification will be + * sent to it. + * + * @param listener the listener to be removed + */ + void removeSAXEventKeeperStatusChangeListener( + [in] XSAXEventKeeperStatusChangeListener listener); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeListener.idl b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeListener.idl new file mode 100644 index 000000000000..9d04a0ba1757 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeListener.idl @@ -0,0 +1,78 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsaxeventkeeperstatuschangelistener_idl_ +#define __com_sun_star_xml_crypto_sax_xsaxeventkeeperstatuschangelistener_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of SAXEventKeeper Status Change Listener. + * <p> + * This interface is used to receive the SAXEventKeeper status change notification. + */ +interface XSAXEventKeeperStatusChangeListener : com::sun::star::uno::XInterface +{ + /** + * Notifies the SAXEventKeeper is entering/leaving blocking state. + * + * @param isBlocking <code>true</code> if the SAXEventKeeper is + * entering blocking state, <code>false</code> + * otherwise + */ + void blockingStatusChanged([in] boolean isBlocking); + + /** + * Notifies the SAXEventKeeper is entering/leaving collecting state. + * + * @param isInsideCollectedElement <code>true</code> if the SAXEventKeeper is + * collecting some element, <code>false</code> + * otherwise + */ + void collectionStatusChanged([in] boolean isInsideCollectedElement); + + /** + * Notifies the SAXEventKeeper's buffer is empty/not empty + * + * @param isBufferEmpty <code>true</code> if the SAXEventKeeper has no buffer + * at all; <code>false</code> otherwise. + */ + void bufferStatusChanged([in] boolean isBufferEmpty); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSecurityController.idl b/offapi/com/sun/star/xml/crypto/sax/XSecurityController.idl new file mode 100644 index 000000000000..872f27d2a78f --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSecurityController.idl @@ -0,0 +1,55 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xbuffercontroller_idl_ +#define __com_sun_star_xml_crypto_sax_xbuffercontroller_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/sax/XDocumentHandler.idl> +#include <com/sun/star/io/XInputStream.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of XML Security Controller + * <p> + * This interface is used to control security operations in the XML security framework. + */ +interface XSecurityController : com::sun::star::uno::XInterface +{ +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.idl b/offapi/com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.idl new file mode 100644 index 000000000000..16b52279a556 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.idl @@ -0,0 +1,133 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsecuritysaxeventkeeper_idl_ +#define __com_sun_star_xml_crypto_sax_xsecuritysaxeventkeeper_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Represents the undefined security id + */ +constants ConstOfSecurityId +{ + const long UNDEFINEDSECURITYID = -1; +}; + +/** + * Defines priority for the element mark's notification. + * <p> + * The PRI_MINIMUM priority is a value less than any practical + * priority value, it is used when compare between different + * priority values. + * <p> + * The PRI_AFTERMODIFY priority represents the notification will be + * sent after any internal modification has finished. + * <p> + * The PRI_BEFOREMODIFY proirity represents the notification will be + * sent before any internal modification happens. + * <p> + * So an element mark with PRI_BEFOREMODIFY will be handled first, + * and one with PRI_AFTERMODIFY will be handled at last. + */ +enum ElementMarkPriority +{ + MINIMUM = 1, + AFTERMODIFY, + BEFOREMODIFY +}; + +/** + * Defines types of element mark. + * <p> + * the TYPEOFELEMENTMARK type represents a blocker, and the TYPEOFELEMENTCOLLECTOR + * type represents a element collector. + */ +enum ElementMarkType +{ + ELEMENTMARK = 1, + ELEMENTCOLLECTOR +}; + +/** + * Interface of Security SAX Event Keeper. + * <p> + * This interface is an extension of the XSAXEventKeeper interface, + * some security related features are added. + */ +interface XSecuritySAXEventKeeper : XSAXEventKeeper +{ + /** + * Adds a new element collector on the next element in the SAX event + * stream. + * + * @param priority the priority of the element collector. See + * ConstOfPriority + * @param modifyElement a flag representing whether the element + * collector will modify the content of its + * element after notification + * @return the keeper id of the new element collector + */ + long addSecurityElementCollector( + [in] ElementMarkPriority priority, + [in] boolean modifyElement); + + /** + * Clones an element collector. + * + * @param referenceId the keeper id of the element collector to + * be cloned + * @param priority the priority of new element collector. See + * ConstOfPriority + * @return the keeper id of the new element collector + */ + long cloneElementCollector( + [in] long referenceId, + [in] ElementMarkPriority priority); + + /** + * Sets security id for an element mark. + * + * @param id the keeper id of the element collector to be set + * @param securityId the security id to be set + */ + void setSecurityId([in] long id, [in] long securityId); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultBroadcaster.idl b/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultBroadcaster.idl new file mode 100644 index 000000000000..ff65155a6491 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultBroadcaster.idl @@ -0,0 +1,76 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsignaturecreationresultbroadcaster_idl_ +#define __com_sun_star_xml_crypto_sax_xsignaturecreationresultbroadcaster_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +interface XSignatureCreationResultListener; + +/** + * Interface of Signature Creation Result Broadcaster. + * <p> + * This interface is used to manipulate signature creation result listener. + */ +interface XSignatureCreationResultBroadcaster : com::sun::star::uno::XInterface +{ + /** + * Adds a new signature creation result listener. + * <p> + * When the signature is created, the result information will be sent to this + * listener. + * + * @param listener the listener to be added + */ + void addSignatureCreationResultListener( + [in] XSignatureCreationResultListener listener) + raises( com::sun::star::uno::Exception ); + + /** + * Removes a signature creation result listener. + * <p> + * After a listener is removed, no result information will be sent to it. + * + * @param listener the listener to be removed + */ + void removeSignatureCreationResultListener( + [in] XSignatureCreationResultListener listener); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultListener.idl b/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultListener.idl new file mode 100644 index 000000000000..7d488ef640bf --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultListener.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsignaturecreationresultlistener_idl_ +#define __com_sun_star_xml_crypto_sax_xsignaturecreationresultlistener_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/crypto/SecurityOperationStatus.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Signature Creation Result Listener. + * <p> + * This interface is used to receive the result information of a + * signature creation. + */ +interface XSignatureCreationResultListener : com::sun::star::uno::XInterface +{ + /** + * Notifies the signature creation result. + * + * @param securityId the security id of the signature + * @param creationResult the result information + */ + void signatureCreated( + [in] long securityId, + [in] com::sun::star::xml::crypto::SecurityOperationStatus creationResult); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultBroadcaster.idl b/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultBroadcaster.idl new file mode 100644 index 000000000000..de557f356f44 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultBroadcaster.idl @@ -0,0 +1,76 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsignatureverifyresultbroadcaster_idl_ +#define __com_sun_star_xml_crypto_sax_xsignatureverifyresultbroadcaster_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +interface XSignatureVerifyResultListener; + +/** + * Interface of Signature Verify Result Broadcaster. + * <p> + * This interface is used to manipulate signature verify result listener. + */ +interface XSignatureVerifyResultBroadcaster : com::sun::star::uno::XInterface +{ + /** + * Adds a new signature verify result listener. + * <p> + * When the signature is verified, the result information will be sent to this + * listener. + * + * @param listener the listener to be added + */ + void addSignatureVerifyResultListener( + [in] XSignatureVerifyResultListener listener) + raises( com::sun::star::uno::Exception ); + + /** + * Removes a signature verify result listener. + * <p> + * After a listener is removed, no result information will be sent to it. + * + * @param listener the listener to be removed + */ + void removeSignatureVerifyResultListener( + [in] XSignatureVerifyResultListener listener); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultListener.idl b/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultListener.idl new file mode 100644 index 000000000000..a9de2fb7ef90 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultListener.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +//i20156 - new file for xmlsecurity module + +/** -- idl definition -- **/ + +#ifndef __com_sun_star_xml_crypto_sax_xsignatureverifyresultlistener_idl_ +#define __com_sun_star_xml_crypto_sax_xsignatureverifyresultlistener_idl_ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/uno/Exception.idl> +#include <com/sun/star/xml/crypto/SecurityOperationStatus.idl> + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Signature Verify Result Listener. + * <p> + * This interface is used to receive the result information of a + * signature verification. + */ +interface XSignatureVerifyResultListener : com::sun::star::uno::XInterface +{ + /** + * Notifies the signature verify result. + * + * @param securityId the security id of the signature + * @param verifyResult the result information + */ + void signatureVerified( + [in] long securityId, + [in] com::sun::star::xml::crypto::SecurityOperationStatus verifyResult); +}; + +} ; } ; } ; } ; } ; } ; + + +#endif + diff --git a/offapi/com/sun/star/xml/crypto/sax/makefile.mk b/offapi/com/sun/star/xml/crypto/sax/makefile.mk new file mode 100644 index 000000000000..a95aef560bea --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/makefile.mk @@ -0,0 +1,72 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +#i20156 - new file for xmlsecurity module + +PRJ=..$/..$/..$/..$/..$/.. + +PRJNAME=offapi + +TARGET=xsec-sax +PACKAGE=com$/sun$/star$/xml$/crypto$/sax + +# --- Settings ----------------------------------------------------- +.INCLUDE : $(PRJ)$/util$/makefile.pmk + +# ------------------------------------------------------------------------ + +IDLFILES=\ + XSecurityController.idl \ + XElementStackKeeper.idl \ + XSAXEventKeeper.idl \ + XSecuritySAXEventKeeper.idl \ + XSAXEventKeeperStatusChangeBroadcaster.idl \ + XSAXEventKeeperStatusChangeListener.idl \ + XKeyCollector.idl \ + XReferenceCollector.idl \ + XBlockerMonitor.idl \ + XMissionTaker.idl \ + XEncryptionResultBroadcaster.idl \ + XEncryptionResultListener.idl \ + XDecryptionResultBroadcaster.idl \ + XDecryptionResultListener.idl \ + XSignatureCreationResultBroadcaster.idl \ + XSignatureCreationResultListener.idl \ + XSignatureVerifyResultBroadcaster.idl \ + XSignatureVerifyResultListener.idl \ + XReferenceResolvedBroadcaster.idl \ + XReferenceResolvedListener.idl \ + SignatureCreator.idl \ + SignatureVerifier.idl \ + Decryptor.idl \ + Encryptor.idl \ + SAXEventKeeper.idl + +# ------------------------------------------------------------------ + +.INCLUDE : target.mk +.INCLUDE : $(PRJ)$/util$/target.pmk |