Logo Search packages:      
Sourcecode: bouncycastle version File versions  Download package

ExperimentalPacket.java

package org.bouncycastle.bcpg;

import java.io.*;

/**
 * basic packet for an experimental packet.
 */
00008 public class ExperimentalPacket 
    extends ContainedPacket implements PublicKeyAlgorithmTags
{
    private int    tag;
    private byte[] contents;
    
    /**
     * 
     * @param in
     * @throws IOException
     */
00019     ExperimentalPacket(
        int                tag,
        BCPGInputStream    in)
        throws IOException
    {
        this.tag = tag;
        
        if (in.available() != 0)
        {
            ByteArrayOutputStream bOut = new ByteArrayOutputStream(in.available());
            
            int b;
            while ((b = in.read()) >= 0) 
            {
                 bOut.write(b);
            }
            
            contents = bOut.toByteArray();
        }
        else
        {
            contents = new byte[0];
        }
    }
    
    public int getTag()
    {
        return tag;
    }
    
    public byte[] getContents()
    {
        byte[]    tmp = new byte[contents.length];
        
        System.arraycopy(contents, 0, tmp, 0, tmp.length);
        
        return tmp;
    }
    
    public void encode(
        BCPGOutputStream    out)
        throws IOException
    {
        out.writePacket(tag, contents, true);
    }
}

Generated by  Doxygen 1.6.0   Back to index