PKFileBasedSigningUtil extends PKAbstractSigningUtil { public void signManifestFileAndWriteToDirectory(final File temporaryPassDirectory, final File manifestJSONFile, final PKSigningInformation signingInformation) throws PKSigningException { Assert.notNull(temporaryPassDirectory, "Temporary directory is mandatory"); Assert.notNull(manifestJSONFile, "Manifest JSON file is mandatory"); File signatureFile = new File(temporaryPassDirectory.getAbsolutePath() + File.separator + SIGNATURE_FILE_NAME); try (FileOutputStream signatureOutputStream = new FileOutputStream(signatureFile)) { CMSProcessableFile content = new CMSProcessableFile(manifestJSONFile); signatureOutputStream.write(signManifestUsingContent(signingInformation, content)); } catch (IOException e) { throw new PKSigningException("Error when writing signature to folder", e); } } PKFileBasedSigningUtil();  PKFileBasedSigningUtil(ObjectWriter objectWriter); @Deprecated  PKFileBasedSigningUtil(ObjectMapper objectMapper); @Override byte[] createSignedAndZippedPkPassArchive(PKPass pass, IPKPassTemplate passTemplate, PKSigningInformation signingInformation); @Override byte[] createSignedAndZippedPersonalizedPkPassArchive(PKPass pass, PKPersonalization personalization, IPKPassTemplate passTemplate,
            PKSigningInformation signingInformation); byte[] createSignedAndZippedPkPassArchive(final PKPass pass, final URL fileUrlOfTemplateDirectory,
            final PKSigningInformation signingInformation); byte[] createSignedAndZippedPkPassArchive(final PKPass pass, final String pathToTemplateDirectory,
            final PKSigningInformation signingInformation); void signManifestFileAndWriteToDirectory(final File temporaryPassDirectory, final File manifestJSONFile,
            final PKSigningInformation signingInformation);  }
@Test public void testManifest() throws Exception { File temporaryPassDir = new File("target/"); File manifestJSONFile = new File(getPathFromClasspath("pass.json")); PKSigningInformation pkSigningInformation = new PKSigningInformationUtil().loadSigningInformationFromPKCS12AndIntermediateCertificate( KEYSTORE_PATH, KEYSTORE_PASSWORD, APPLE_WWDRCA); PKFileBasedSigningUtil pkSigningUtil = new PKFileBasedSigningUtil(); pkSigningUtil.signManifestFileAndWriteToDirectory(temporaryPassDir, manifestJSONFile, pkSigningInformation); }