org.apache.xml.security.encryption.EncryptionProperty Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xmlsec Show documentation
Show all versions of xmlsec Show documentation
Apache XML Security for Java supports XML-Signature Syntax and Processing,
W3C Recommendation 12 February 2002, and XML Encryption Syntax and
Processing, W3C Recommendation 10 December 2002. As of version 1.4,
the library supports the standard Java API JSR-105: XML Digital Signature APIs.
/**
* 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
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.xml.security.encryption;
import java.util.Iterator;
import org.w3c.dom.Element;
/**
* Additional information items concerning the generation of the
* EncryptedData
or EncryptedKey
can be placed in an
* EncryptionProperty
element (e.g., date/time stamp or the serial
* number of cryptographic hardware used during encryption). The Target
* attribute identifies the EncryptedType
structure being
* described. anyAttribute permits the inclusion of attributes from the XML
* namespace to be included (i.e., xml:space
,
* xml:lang
, and xml:base
).
*
* It is defined as follows:
*
*
*
*
*
*
*
*
*
*
*
*
* @author Axl Mattheus
*/
public interface EncryptionProperty {
/**
* Returns the EncryptedType
being described.
*
* @return the EncryptedType
being described by this
* EncryptionProperty
.
*/
String getTarget();
/**
* Sets the target.
*
* @param target
*/
void setTarget(String target);
/**
* Returns the id of the EncryptionProperty
.
*
* @return the id.
*/
String getId();
/**
* Sets the id.
*
* @param id
*/
void setId(String id);
/**
* Returns the attribute's value in the xml
namespace.
*
* @param attribute
* @return the attribute's value.
*/
String getAttribute(String attribute);
/**
* Set the attribute value.
*
* @param attribute the attribute's name.
* @param value the attribute's value.
*/
void setAttribute(String attribute, String value);
/**
* Returns the properties of the EncryptionProperty
.
*
* @return an Iterator
over all the additional encryption
* information contained in this class.
*/
Iterator getEncryptionInformation();
/**
* Adds encryption information.
*
* @param information the additional encryption information.
*/
void addEncryptionInformation(Element information);
/**
* Removes encryption information.
*
* @param information the information to remove.
*/
void removeEncryptionInformation(Element information);
}