001// SPDX-FileCopyrightText: 2021 Paul Schaub <vanitasvitae@fsfe.org> 002// 003// SPDX-License-Identifier: Apache-2.0 004 005package org.pgpainless.sop; 006 007import java.io.IOException; 008import java.io.InputStream; 009import java.io.OutputStream; 010 011import org.bouncycastle.openpgp.PGPUtil; 012import org.bouncycastle.util.io.Streams; 013import sop.Ready; 014import sop.operation.Dearmor; 015 016public class DearmorImpl implements Dearmor { 017 018 @Override 019 public Ready data(InputStream data) throws IOException { 020 InputStream decoder = PGPUtil.getDecoderStream(data); 021 return new Ready() { 022 023 @Override 024 public void writeTo(OutputStream outputStream) throws IOException { 025 Streams.pipeAll(decoder, outputStream); 026 decoder.close(); 027 } 028 }; 029 } 030}