org.apache.camel.component.file
Class GenericFileProducer<T>

java.lang.Object
  extended by org.apache.camel.impl.ServiceSupport
      extended by org.apache.camel.impl.DefaultProducer
          extended by org.apache.camel.component.file.GenericFileProducer<T>
All Implemented Interfaces:
IsSingleton, Processor, Producer, Service, ShutdownableService
Direct Known Subclasses:
RemoteFileProducer

public class GenericFileProducer<T>
extends DefaultProducer

Generic file producer


Field Summary
protected  GenericFileEndpoint<T> endpoint
           
protected  org.apache.commons.logging.Log log
           
protected  GenericFileOperations<T> operations
           
 
Constructor Summary
protected GenericFileProducer(GenericFileEndpoint<T> endpoint, GenericFileOperations<T> operations)
           
 
Method Summary
 String createFileName(Exchange exchange)
           
 String createTempFileName(Exchange exchange, String fileName)
           
 String getFileSeparator()
           
 void handleFailedWrite(Exchange exchange, Exception exception)
          If we fail writing out a file, we will call this method.
 String normalizePath(String name)
           
 void postWriteCheck()
          Perform any actions that need to occur after we are done such as disconnecting.
 void preWriteCheck()
          Perform any actions that need to occur before we write such as connecting to an FTP server etc.
 void process(Exchange exchange)
          Processes the message exchange
protected  void processExchange(Exchange exchange)
          Perform the work to process the fileExchange
 void setOperations(GenericFileOperations<T> operations)
          Sets the operations to be used.
 void writeFile(Exchange exchange, String fileName)
           
 
Methods inherited from class org.apache.camel.impl.DefaultProducer
createExchange, createExchange, createExchange, doStart, doStop, getEndpoint, isSingleton, toString
 
Methods inherited from class org.apache.camel.impl.ServiceSupport
addChildService, doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, removeChildService, resume, shutdown, start, start, stop, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.camel.Service
start, stop
 

Field Detail

log

protected final transient org.apache.commons.logging.Log log

endpoint

protected final GenericFileEndpoint<T> endpoint

operations

protected GenericFileOperations<T> operations
Constructor Detail

GenericFileProducer

protected GenericFileProducer(GenericFileEndpoint<T> endpoint,
                              GenericFileOperations<T> operations)
Method Detail

getFileSeparator

public String getFileSeparator()

normalizePath

public String normalizePath(String name)

process

public void process(Exchange exchange)
             throws Exception
Description copied from interface: Processor
Processes the message exchange

Parameters:
exchange - the message exchange
Throws:
Exception - if an internal processing error has occurred.

setOperations

public void setOperations(GenericFileOperations<T> operations)
Sets the operations to be used.

Can be used to set a fresh operations in case of recovery attempts

Parameters:
operations - the operations

processExchange

protected void processExchange(Exchange exchange)
                        throws Exception
Perform the work to process the fileExchange

Parameters:
exchange - fileExchange
Throws:
Exception - is thrown if some error

handleFailedWrite

public void handleFailedWrite(Exchange exchange,
                              Exception exception)
                       throws Exception
If we fail writing out a file, we will call this method. This hook is provided to disconnect from servers or clean up files we created (if needed).

Throws:
Exception

preWriteCheck

public void preWriteCheck()
                   throws Exception
Perform any actions that need to occur before we write such as connecting to an FTP server etc.

Throws:
Exception

postWriteCheck

public void postWriteCheck()
Perform any actions that need to occur after we are done such as disconnecting.


writeFile

public void writeFile(Exchange exchange,
                      String fileName)
               throws GenericFileOperationFailedException
Throws:
GenericFileOperationFailedException

createFileName

public String createFileName(Exchange exchange)

createTempFileName

public String createTempFileName(Exchange exchange,
                                 String fileName)


Apache CAMEL