List of usage examples for com.itextpdf.text.pdf PdfEncryptor getPermissionsVerbose
public static String getPermissionsVerbose(int permissions)
From source file:org.sejda.impl.itext5.EncryptTask.java
License:Open Source License
public void execute(EncryptParameters parameters) throws TaskException { int currentStep = 0; for (PdfSource<?> source : parameters.getSourceList()) { currentStep++;/*from w ww .j a va 2 s.c o m*/ LOG.debug("Opening {} ", source); reader = source.open(sourceOpener); File tmpFile = createTemporaryPdfBuffer(); LOG.debug("Created output temporary buffer {} ", tmpFile); stamperHandler = new PdfStamperHandler(reader, tmpFile, parameters.getVersion()); stamperHandler.setCompression(parameters.isCompress(), reader); stamperHandler.setEncryption( getEncryptionAlgorithm(parameters.getEncryptionAlgorithm()) | PdfWriter.DO_NOT_ENCRYPT_METADATA, parameters.getUserPassword(), parameters.getOwnerPassword(), permissions); nullSafeCloseQuietly(stamperHandler); nullSafeClosePdfReader(reader); String outName = nameGenerator(parameters.getOutputPrefix()) .generate(nameRequest().originalName(source.getName()).fileNumber(currentStep)); outputWriter.addOutput(file(tmpFile).name(outName)); notifyEvent(getNotifiableTaskMetadata()).stepsCompleted(currentStep).outOf(totalSteps); } parameters.getOutput().accept(outputWriter); LOG.debug("Input documents encrypted and written to {}", parameters.getOutput()); LOG.debug("Permissions {}", PdfEncryptor.getPermissionsVerbose(permissions)); }