Home | History | Annotate | Download | only in pem
      1 package org.bouncycastle.util.io.pem;
      2 
      3 import java.util.ArrayList;
      4 import java.util.Collections;
      5 import java.util.List;
      6 
      7 /**
      8  * A generic PEM object - type, header properties, and byte content.
      9  */
     10 public class PemObject
     11     implements PemObjectGenerator
     12 {
     13     private static final List EMPTY_LIST = Collections.unmodifiableList(new ArrayList());
     14 
     15     private String type;
     16     private List   headers;
     17     private byte[] content;
     18 
     19     /**
     20      * Generic constructor for object without headers.
     21      *
     22      * @param type pem object type.
     23      * @param content the binary content of the object.
     24      */
     25     public PemObject(String type, byte[] content)
     26     {
     27         this(type, EMPTY_LIST, content);
     28     }
     29 
     30     /**
     31      * Generic constructor for object with headers.
     32      *
     33      * @param type pem object type.
     34      * @param headers a list of PemHeader objects.
     35      * @param content the binary content of the object.
     36      */
     37     public PemObject(String type, List headers, byte[] content)
     38     {
     39         this.type = type;
     40         this.headers = Collections.unmodifiableList(headers);
     41         this.content = content;
     42     }
     43 
     44     public String getType()
     45     {
     46         return type;
     47     }
     48 
     49     public List getHeaders()
     50     {
     51         return headers;
     52     }
     53 
     54     public byte[] getContent()
     55     {
     56         return content;
     57     }
     58 
     59     public PemObject generate()
     60         throws PemGenerationException
     61     {
     62         return this;
     63     }
     64 }
     65