1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24#ifndef __com_sun_star_xml_crypto_xxmlsecuritycontext_idl_ 25#define __com_sun_star_xml_crypto_xxmlsecuritycontext_idl_ 26 27#include <com/sun/star/uno/XInterface.idl> 28#include <com/sun/star/security/SecurityInfrastructureException.idl> 29 30#include <com/sun/star/xml/crypto/XSecurityEnvironment.idl> 31 32module com { module sun { module star { module xml { module crypto { 33 34/** 35 * Interface of XML security context 36 * 37 * <p>This interface specifies a certain signature context. By signature 38 * context, the signer or verifier retrieves key specification.</p> 39 */ 40published interface XXMLSecurityContext : com::sun::star::uno::XInterface 41{ 42 /** 43 * Add personal security environment , and return the index of the added env. 44 */ 45 long addSecurityEnvironment( [in] XSecurityEnvironment aSecurityEnvironment 46 ) raises( com::sun::star::security::SecurityInfrastructureException ) ; 47 48 /** 49 * Get the number of security environments 50 */ 51 long getSecurityEnvironmentNumber( ) ; 52 53 /** 54 * Get personal security environment 55 */ 56 com::sun::star::xml::crypto::XSecurityEnvironment getSecurityEnvironmentByIndex([in] long index ) ; 57 58 /** 59 * An handy method to get the first personal security environment. 60 * In xmlsec/nss, the first personal security environment should be the "internal slot" 61 */ 62 com::sun::star::xml::crypto::XSecurityEnvironment getSecurityEnvironment( ) ; 63 64 /** 65 * Get the ID of the internal security environment 66 */ 67 long getDefaultSecurityEnvironmentIndex( ) ; 68 69 /** 70 * set the ID of the internal security environment 71 */ 72 void setDefaultSecurityEnvironmentIndex([in] long index ) ; 73 74} ; 75 76} ; } ; } ; } ; } ; 77 78#endif 79 80