AbstractGpgSigner newSigner()

in src/main/java/org/apache/maven/plugins/gpg/AbstractGpgMojo.java [167:196]


    AbstractGpgSigner newSigner(MavenProject project) throws MojoExecutionException, MojoFailureException {
        AbstractGpgSigner signer = new GpgSigner(executable);

        signer.setLog(getLog());
        signer.setInteractive(interactive);
        signer.setKeyName(keyname);
        signer.setUseAgent(useAgent);
        signer.setHomeDirectory(homedir);
        signer.setDefaultKeyring(defaultKeyring);
        signer.setSecretKeyring(secretKeyring);
        signer.setPublicKeyring(publicKeyring);
        signer.setLockMode(lockMode);
        signer.setArgs(gpgArguments);

        loadGpgPassphrase();

        signer.setPassPhrase(passphrase);
        if (null == passphrase && !useAgent) {
            if (!interactive) {
                throw new MojoFailureException("Cannot obtain passphrase in batch mode");
            }
            try {
                signer.setPassPhrase(signer.getPassphrase(project));
            } catch (IOException e) {
                throw new MojoExecutionException("Exception reading passphrase", e);
            }
        }

        return signer;
    }