protected ProcessOutput executeProcess(FaxJob faxJob,String command,FaxActionType faxActionType)
    {
        if(command==null)
        {
            this.throwUnsupportedException();
        }

        //update command
        String updatedCommand=command;
        if(this.useWindowsCommandPrefix)
        {
            //init buffer
            StringBuilder buffer=new StringBuilder(updatedCommand.length()+this.windowsCommandPrefix.length()+1);
            
            //update command
            buffer.append(this.windowsCommandPrefix);
            buffer.append(" ");
            buffer.append(updatedCommand);
            updatedCommand=buffer.toString();
        }

        //execute process
        ProcessOutput processOutput=ProcessExecutorHelper.executeProcess(this,updatedCommand);

        //validate output (if not valid, an exception should be thrown)
        this.validateProcessOutput(processOutput,faxActionType);
        
        //update fax job
        this.updateFaxJob(faxJob,processOutput,faxActionType);
        
        return processOutput;
    }
protected ProcessOutput executeProcess ( FaxJob faxJob , String command , FaxActionType faxActionType ) { if ( command == null ) { this . throwUnsupportedException ( ) ; } String updatedCommand = command ; if ( this . useWindowsCommandPrefix ) { StringBuilder buffer = new StringBuilder ( updatedCommand . length ( ) + this . windowsCommandPrefix . length ( ) + 1 ) ; buffer . append ( this . windowsCommandPrefix ) ; buffer . append ( " " ) ; buffer . append ( updatedCommand ) ; updatedCommand = buffer . toString ( ) ; } ProcessOutput processOutput = ProcessExecutorHelper . executeProcess ( this , updatedCommand ) ; this . validateProcessOutput ( processOutput , faxActionType ) ; this . updateFaxJob ( faxJob , processOutput , faxActionType ) ; return processOutput ; }
Executes the process and returns the output.

@param   faxJob
The fax job object
@param   command
The command to execute
@param   faxActionType
The fax action type
@return  The process output