diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
commit | 267c6f2ac71f92999e969232431ba04678e7437e (patch) | |
tree | 358c9467650e1d0a1d7227a21dac2e3d08b622b2 /offapi/com/sun/star/xml/crypto/sax | |
parent | Initial commit. (diff) | |
download | libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.tar.xz libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.zip |
Adding upstream version 4:24.2.0.upstream/4%24.2.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'offapi/com/sun/star/xml/crypto/sax')
23 files changed, 1175 insertions, 0 deletions
diff --git a/offapi/com/sun/star/xml/crypto/sax/ConstOfSecurityId.idl b/offapi/com/sun/star/xml/crypto/sax/ConstOfSecurityId.idl new file mode 100644 index 0000000000..5951b5c0b2 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/ConstOfSecurityId.idl @@ -0,0 +1,32 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Represents the undefined security id + */ +constants ConstOfSecurityId +{ + const long UNDEFINEDSECURITYID = -1; +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/xml/crypto/sax/ElementMarkPriority.idl b/offapi/com/sun/star/xml/crypto/sax/ElementMarkPriority.idl new file mode 100644 index 0000000000..96f5790ea8 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/ElementMarkPriority.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * 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 priority 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 +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/xml/crypto/sax/ElementMarkType.idl b/offapi/com/sun/star/xml/crypto/sax/ElementMarkType.idl new file mode 100644 index 0000000000..96f946ec68 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/ElementMarkType.idl @@ -0,0 +1,36 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Defines types of element mark. + * <p> + * the TYPEOFELEMENTMARK type represents a blocker, and the TYPEOFELEMENTCOLLECTOR + * type represents an element collector. + */ +enum ElementMarkType +{ + ELEMENTMARK = 1, + ELEMENTCOLLECTOR +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/xml/crypto/sax/ElementStackItem.idl b/offapi/com/sun/star/xml/crypto/sax/ElementStackItem.idl new file mode 100644 index 0000000000..4a73272040 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/ElementStackItem.idl @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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; +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..da9071d1fc --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XBlockerMonitor.idl @@ -0,0 +1,40 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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 ); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..3594e1dc68 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultBroadcaster.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..d1e5c4c372 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XDecryptionResultListener.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..6a8061082e --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XElementStackKeeper.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Manipulate the "key SAX events" in a SAX event stream. + */ +interface XElementStackKeeper : com::sun::star::uno::XInterface +{ + /** + * Starts to buffer key SAX events. + */ + void start(); + + /** + * Stops buffering key SAX events. + */ + void stop(); + + /** + * Transfers the buffered 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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..7eee5da5da --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultBroadcaster.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..695809fea7 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XEncryptionResultListener.idl @@ -0,0 +1,46 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + + + +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); +}; + +} ; } ; } ; } ; } ; } ; + + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..d72fa9c42f --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XKeyCollector.idl @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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 ); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..6e72cc0817 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl @@ -0,0 +1,40 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * Interface of Mission Taker. + * <p> + * This interface is used to control 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(); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..a51db736f2 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XReferenceCollector.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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 collector 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 ); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..96edda104c --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedBroadcaster.idl @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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 an 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 an 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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..172fc18d14 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedListener.idl @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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 an 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 ); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..52390c6666 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl @@ -0,0 +1,123 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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 an 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 buffered elements. + * + * @return a tree-style string including all buffer information + */ + 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(); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..0efba7e4fe --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeBroadcaster.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..e91c36c651 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeListener.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..6c39b3f64f --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +module com { module sun { module star { module xml { module crypto { module sax { + +/** + * 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); + + /** + * 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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..20f1173b90 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultBroadcaster.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..30d1b8d006 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultListener.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..96868a171e --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultBroadcaster.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 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 0000000000..ab1b10fc10 --- /dev/null +++ b/offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultListener.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +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); +}; + +} ; } ; } ; } ; } ; } ; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |