Quick Start (EJB mode): Entering backup mode using the Java API

The following Java code example enters into backup mode with a unique label for two hours. After the backup time expires or if backup mode is explicitly exited, the LiveCycle Server returns to purging files from the Global Document Storage. (See Entering Backup Mode on the LiveCycle server.)

/* 
    * This Java Quick Start uses the EJB mode and contains the following JAR files 
    * in the class path: 
    * 1. adobe-backup-restore-client-sdk.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 the LiveCycle Server is not deployed 
    * on JBoss) 
    * 6. jacorb.jar (use a different JAR file if the LiveCycle Server is not deployed on JBoss) 
    * 7. jnp-client.jar (use a different JAR file if the LiveCycle Server is not deployed on JBoss) 
    *  
    *  The JBoss files must be kept in the jboss\client folder. You can copy the client folder to  
    *  your local development environment and then include the 3 JBoss JAR files in your class path 
    *   
    *  These JAR files are located in the following path: 
    * <install directory>/sdk/client-libs/common 
    *  
    * The adobe-utilities.jar file is located in the following path: 
    * <install directory>/sdk/client-libs/jboss 
    *  
    * The jbossall-client.jar file is located in the following path: 
    * <install directory>/jboss/client 
    *  
    * If you want to invoke a remote LiveCycle Server instance and there is a 
    * firewall between the client application and the server, then it is  
    * recommended that you use the SOAP mode. When using the SOAP mode,  
    * you have to include additional JAR files located in the following  
    * path 
    * <install directory>/sdk/client-libs/thirdparty 
    *  
    * For information about the SOAP  
    * mode and the additional JAR files that need to be included,  
    * see "Setting connection properties" in Programming  
    * with LiveCycle 
    *  
    * For complete details about the location of the LiveCycle JAR files,  
    * see "Including LiveCycle Java library files" in Programming  
    * with LiveCycle 
    */ 
import java.util.Properties; 
 
import com.adobe.idp.backup.dsc.client.BackupServiceClient; 
import com.adobe.idp.backup.dsc.service.BackupModeEntryResult; 
import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 
public class BackupRestoreEnter 
{ 
    public static void main(String[] args)  
    { 
        try 
        { 
            // Set connection properties required to invoke LiveCycle 
            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, ServiceClientFactoryProperties.DSC_JBOSS_SERVER_TYPE); 
            connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME,"administrator"); 
            connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
 
            // Create a ServiceClientFactory instance 
            ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
 
            // Create a BackupService client object 
            BackupServiceClient backup = new BackupServiceClient(myFactory); 
             
            // Specify a generic label, 120 minutes to perform the backup,  
            // and not to provide continous backup mode coverage (used for snapshot backups) 
            String backUpLabel = new String("Snapshot2008July01"); 
            int minsInBackupMode = 120; 
            boolean continousCoverage = false; 
             
             
            // Enter backup mode on the LiveCycle Server server 
            BackupModeEntryResult backupResult = backup.enterBackupMode(backUpLabel,minsInBackupMode, continousCoverage); 
             
            // Get information from entering backup mode on the the LiveCycle Server server. 
            if (backupResult != null) 
            {     
                System.out.println("Start time is: " + backupResult.getStartTime()); 
                System.out.println("Backup Current ID is: " + backupResult.getId()); 
                System.out.println("Backup Previous ID is: " + backupResult.getPreviousReservationId()); 
                System.out.println("Backup Label is: " + backupResult.getLabel()); 
                System.out.println("Backup Time to complete is: " + backupResult.getReservationTimeout()); 
            } 
            else 
            { 
                System.out.println("Could not enter backup mode."); 
            } 
                             
        } 
        catch (Exception e)  
        { 
            e.printStackTrace(); 
        } 
        return; 
    }  
} 

// Ethnio survey code removed