Package com.github.sannies.nexusaptplugin.cache.generators

Source Code of com.github.sannies.nexusaptplugin.cache.generators.SignKeyGenerator

package com.github.sannies.nexusaptplugin.cache.generators;

import java.io.ByteArrayOutputStream;
import java.io.IOException;

import javax.inject.Named;

import org.bouncycastle.bcpg.ArmoredOutputStream;
import org.bouncycastle.bcpg.BCPGOutputStream;
import org.bouncycastle.openpgp.PGPException;
import org.bouncycastle.openpgp.PGPPublicKey;

import com.github.sannies.nexusaptplugin.cache.FileGenerator;
import com.github.sannies.nexusaptplugin.cache.RepositoryData;
import com.github.sannies.nexusaptplugin.sign.AptSigningConfiguration;
import com.github.sannies.nexusaptplugin.sign.PGPSigner;
import com.google.inject.Inject;


@Named
public class SignKeyGenerator
  implements FileGenerator
{
    private final AptSigningConfiguration configuration;

    @Inject
  public SignKeyGenerator(AptSigningConfiguration configuration)
  {
      this.configuration = configuration;
  }

  @Override
  public byte[] generateFile(RepositoryData data)
    throws Exception
  {
    // Extract the key and return it
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    PGPSigner signer = configuration.getSigner();
    PGPPublicKey publicKey = signer.getSecretKey().getPublicKey();

    BCPGOutputStream out = new BCPGOutputStream(new ArmoredOutputStream(baos));
    publicKey.encode(out);

    out.close();
    baos.close();

    return baos.toByteArray();
  }

}
TOP

Related Classes of com.github.sannies.nexusaptplugin.cache.generators.SignKeyGenerator

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.