// 
// Decompiled by Procyon v0.6.0
// 

package org.bouncycastle.jcajce.io;

import java.io.IOException;
import java.security.SignatureException;
import org.bouncycastle.util.Exceptions;
import java.security.Signature;
import java.io.OutputStream;

class SignatureUpdatingOutputStream extends OutputStream
{
    private Signature sig;
    
    SignatureUpdatingOutputStream(final Signature sig) {
        this.sig = sig;
    }
    
    @Override
    public void write(final byte[] data, final int off, final int len) throws IOException {
        try {
            this.sig.update(data, off, len);
        }
        catch (final SignatureException ex) {
            throw Exceptions.ioException(ex.getMessage(), ex);
        }
    }
    
    @Override
    public void write(final byte[] data) throws IOException {
        try {
            this.sig.update(data);
        }
        catch (final SignatureException ex) {
            throw Exceptions.ioException(ex.getMessage(), ex);
        }
    }
    
    @Override
    public void write(final int n) throws IOException {
        try {
            this.sig.update((byte)n);
        }
        catch (final SignatureException ex) {
            throw Exceptions.ioException(ex.getMessage(), ex);
        }
    }
}
