API Quick Starts (Code Examples) > Encryption Service API Quick Starts > Quick Start: Determining encryption type using the Java API

Quick Start: Determining encryption type using the Java API
The following Java code example determines the type of encryption that is protecting a PDF document named EncryptLoan.pdf. (See Determining Encryption Type.)
/*
 * This Java Quick Start uses the following JAR files
 * 1. adobe-encryption-client.jar
 * 2. adobe-livecycle-client.jar
 * 3. adobe-usermanager-client.jar
 * 4. adobe-utilities.jar
 * 5. jbossall-client.jar (use a different JAR file if LiveCycle ES is not deployed on JBoss)
 * 
 *  These JAR files are located in the following path:
 * <install directory>/Adobe/LiveCycle8/LiveCycle_ES_SDK/client-libs
 * 
 * For complete details about the location of these JAR files, 
 * see "Including LiveCycle ES library files" in Programming with 
 * LiveCycle ES
 */
import java.io.FileInputStream;
import java.util.Properties;
import com.adobe.idp.Document;
import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties;
import com.adobe.livecycle.encryption.client.*;
 
public class GetEncryptionType {
 
	public static void main(String[] args) {
		
		try{
			//Set connection properties required to invoke LiveCycle ES								
			Properties connectionProps = new Properties();
			connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_EJB_ENDPOINT, "jnp://localhost:1099");
			connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_EJB_PROTOCOL);          
			connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss");
			connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator");
			connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password");
						
			//Create a ServiceClientFactory object
			ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps);
				
			//Create a EncryptionServiceClient object
			EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory); 
		
			//Get the PDF document
			FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\\EncryptLoan.pdf");	
			Document inDoc = new Document (fileInputStream);
 
			//Determine the type of encryption of the PDF document
			EncryptionTypeResult encryptTypeResult = encryptClient.getPDFEncryption(inDoc);
						
			if (encryptTypeResult.getEncryptionType() == EncryptionType.PASSWORD)
				System.out.println("The PDF document is protected with password-based encryption");
			else if (encryptTypeResult.getEncryptionType() == EncryptionType.POLICY_SERVER)	
				System.out.println("The PDF document is protected with policy");
			else if (encryptTypeResult.getEncryptionType() == EncryptionType.CERTIFICATE)	
				System.out.println("The PDF document is protected with certificate-based encryption");
			else if (encryptTypeResult.getEncryptionType() == EncryptionType.OTHER)	
				System.out.println("The PDF document is protected with another type of encryption");	
			else if (encryptTypeResult.getEncryptionType() == EncryptionType.NONE)	
				System.out.println("The PDF document is not protected.");		
		}catch (Exception e) {
				e.printStackTrace();
		}	
	}
}
 
 

API Quick Starts (Code Examples) > Encryption Service API Quick Starts > Quick Start: Determining encryption type using the Java API

Programming with LiveCycle ES (LiveDocs)
Adobe LiveCycle ES Update 1

 

Send me an e-mail when comments are added to this page | Comment Report

Current page: http://livedocs.adobe.com/livecycle/8.2/programLC/programmer/help/000062.html