All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.xml.crypto.dsig.SignatureProperty Maven / Gradle / Ivy

/**
 * 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.
 */
/*
 * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
 */
/*
 * $Id: SignatureProperty.java 1092655 2011-04-15 10:24:18Z coheigea $
 */
package javax.xml.crypto.dsig;

import javax.xml.crypto.XMLStructure;
import java.util.List;

/**
 * A representation of the XML SignatureProperty element as 
 * defined in the 
 * W3C Recommendation for XML-Signature Syntax and Processing.
 * The XML Schema Definition is defined as:
 * 

 *<element name="SignatureProperty" type="ds:SignaturePropertyType"/> 
 *   <complexType name="SignaturePropertyType" mixed="true">
 *     <choice maxOccurs="unbounded"> 
 *       <any namespace="##other" processContents="lax"/>
 *       <!-- (1,1) elements from (1, unbounded) namespaces -->
 *     </choice>
 *     <attribute name="Target" type="anyURI" use="required"/> 
 *     <attribute name="Id" type="ID" use="optional"/> 
 *   </complexType>
 * 
* * A SignatureProperty instance may be created by invoking the * {@link XMLSignatureFactory#newSignatureProperty newSignatureProperty} * method of the {@link XMLSignatureFactory} class; for example: * *
 *   XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");
 *   SignatureProperty property = factory.newSignatureProperty
 *	(Collections.singletonList(content), "#Signature-1", "TimeStamp");
 * 
* * @author Sean Mullan * @author JSR 105 Expert Group * @see XMLSignatureFactory#newSignatureProperty(List, String, String) * @see SignatureProperties */ public interface SignatureProperty extends XMLStructure { /** * Returns the target URI of this SignatureProperty. * * @return the target URI of this SignatureProperty (never * null) */ String getTarget(); /** * Returns the Id of this SignatureProperty. * * @return the Id of this SignatureProperty (or * null if not specified) */ String getId(); /** * Returns an {@link java.util.Collections#unmodifiableList unmodifiable * list} of one or more {@link XMLStructure}s that are contained in * this SignatureProperty. These represent additional * information items concerning the generation of the {@link XMLSignature} * (i.e. date/time stamp or serial numbers of cryptographic hardware used * in signature generation). * * @return an unmodifiable list of one or more XMLStructures */ List getContent(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy