< prev index next >

src/java.xml.crypto/share/classes/com/sun/org/apache/xml/internal/security/encryption/EncryptionProperties.java

Print this page




   8  * distributed with this work for additional information
   9  * regarding copyright ownership. The ASF licenses this file
  10  * to you under the Apache License, Version 2.0 (the
  11  * "License"); you may not use this file except in compliance
  12  * with the License. You may obtain a copy of the License at
  13  *
  14  * http://www.apache.org/licenses/LICENSE-2.0
  15  *
  16  * Unless required by applicable law or agreed to in writing,
  17  * software distributed under the License is distributed on an
  18  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  19  * KIND, either express or implied. See the License for the
  20  * specific language governing permissions and limitations
  21  * under the License.
  22  */
  23 package com.sun.org.apache.xml.internal.security.encryption;
  24 
  25 import java.util.Iterator;
  26 
  27 /**
  28  * <code>EncryptionProperties</code> can hold additional information concerning
  29  * the generation of the <code>EncryptedData</code> or
  30  * <code>EncryptedKey</code>. This information is wraped int an
  31  * <code>EncryptionProperty</code> element. Examples of additional information
  32  * is e.g., a date/time stamp or the serial number of cryptographic hardware
  33  * used during encryption).
  34  * <p>
  35  * It is defined as follows:
  36  * <xmp>
  37  * <element name='EncryptionProperties' type='xenc:EncryptionPropertiesType'/>
  38  * <complexType name='EncryptionPropertiesType'>
  39  *     <sequence>
  40  *         <element ref='xenc:EncryptionProperty' maxOccurs='unbounded'/>
  41  *     </sequence>
  42  *     <attribute name='Id' type='ID' use='optional'/>
  43  * </complexType>
  44  * </xmp>
  45  *
  46  * @author Axl Mattheus
  47  */
  48 public interface EncryptionProperties {
  49 
  50     /**
  51      * Returns the <code>EncryptionProperties</code>' id.
  52      *
  53      * @return the id.
  54      */
  55     String getId();
  56 
  57     /**
  58      * Sets the id.
  59      *
  60      * @param id the id.
  61      */
  62     void setId(String id);
  63 
  64     /**
  65      * Returns an <code>Iterator</code> over all the
  66      * <code>EncryptionPropterty</code> elements contained in this
  67      * <code>EncryptionProperties</code>.
  68      *
  69      * @return an <code>Iterator</code> over all the encryption properties.
  70      */
  71     Iterator<EncryptionProperty> getEncryptionProperties();
  72 
  73     /**
  74      * Adds an <code>EncryptionProperty</code>.
  75      *
  76      * @param property
  77      */
  78     void addEncryptionProperty(EncryptionProperty property);
  79 
  80     /**
  81      * Removes the specified <code>EncryptionProperty</code>.
  82      *
  83      * @param property
  84      */
  85     void removeEncryptionProperty(EncryptionProperty property);
  86 }
  87 


   8  * distributed with this work for additional information
   9  * regarding copyright ownership. The ASF licenses this file
  10  * to you under the Apache License, Version 2.0 (the
  11  * "License"); you may not use this file except in compliance
  12  * with the License. You may obtain a copy of the License at
  13  *
  14  * http://www.apache.org/licenses/LICENSE-2.0
  15  *
  16  * Unless required by applicable law or agreed to in writing,
  17  * software distributed under the License is distributed on an
  18  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  19  * KIND, either express or implied. See the License for the
  20  * specific language governing permissions and limitations
  21  * under the License.
  22  */
  23 package com.sun.org.apache.xml.internal.security.encryption;
  24 
  25 import java.util.Iterator;
  26 
  27 /**
  28  * {@code EncryptionProperties} can hold additional information concerning
  29  * the generation of the {@code EncryptedData} or
  30  * {@code EncryptedKey}. This information is wraped int an
  31  * {@code EncryptionProperty} element. Examples of additional information
  32  * is e.g., a date/time stamp or the serial number of cryptographic hardware
  33  * used during encryption).
  34  * <p>
  35  * It is defined as follows:
  36  * <pre>{@code
  37  * <element name='EncryptionProperties' type='xenc:EncryptionPropertiesType'/>
  38  * <complexType name='EncryptionPropertiesType'>
  39  *     <sequence>
  40  *         <element ref='xenc:EncryptionProperty' maxOccurs='unbounded'/>
  41  *     </sequence>
  42  *     <attribute name='Id' type='ID' use='optional'/>
  43  * </complexType>
  44  * }</pre>
  45  *
  46  * @author Axl Mattheus
  47  */
  48 public interface EncryptionProperties {
  49 
  50     /**
  51      * Returns the {@code EncryptionProperties}' id.
  52      *
  53      * @return the id.
  54      */
  55     String getId();
  56 
  57     /**
  58      * Sets the id.
  59      *
  60      * @param id the id.
  61      */
  62     void setId(String id);
  63 
  64     /**
  65      * Returns an {@code Iterator} over all the
  66      * {@code EncryptionPropterty} elements contained in this
  67      * {@code EncryptionProperties}.
  68      *
  69      * @return an {@code Iterator} over all the encryption properties.
  70      */
  71     Iterator<EncryptionProperty> getEncryptionProperties();
  72 
  73     /**
  74      * Adds an {@code EncryptionProperty}.
  75      *
  76      * @param property
  77      */
  78     void addEncryptionProperty(EncryptionProperty property);
  79 
  80     /**
  81      * Removes the specified {@code EncryptionProperty}.
  82      *
  83      * @param property
  84      */
  85     void removeEncryptionProperty(EncryptionProperty property);
  86 }
  87 
< prev index next >