Author: davsclaus
Date: Mon Feb  2 12:41:34 2009
New Revision: 739977

URL: http://svn.apache.org/viewvc?rev=739977&view=rev
Log:
Polished file component code a bit

Modified:
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileExclusiveReadLockStrategy.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileDeleteProcessStrategy.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileExpressionRenamer.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileNoOpProcessStrategy.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategySupport.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileRenamer.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/NewMarkerFileExclusiveReadLockStrategy.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileExclusiveReadLockStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileExclusiveReadLockStrategy.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileExclusiveReadLockStrategy.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileExclusiveReadLockStrategy.java
 Mon Feb  2 12:41:34 2009
@@ -28,6 +28,10 @@
  * <ul>
  * <li>GenericFileRenameExclusiveReadLockStrategy waiting until its possible to
  * rename the file.</li>
+ * <li>NewFileLockExclusiveReadLockStrategy acquiring a RW file lock for the 
duration
+ * of the processing.</li>
+ * <li>NewMarkerFileExclusiveReadLockStrategy using a marker file for acquiring
+ * read lock.</li>
  * </ul>
  */
 public interface GenericFileExclusiveReadLockStrategy<T> {

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileDeleteProcessStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileDeleteProcessStrategy.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileDeleteProcessStrategy.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileDeleteProcessStrategy.java
 Mon Feb  2 12:41:34 2009
@@ -22,10 +22,10 @@
 import org.apache.camel.component.file.GenericFileOperationFailedException;
 import org.apache.camel.component.file.GenericFileOperations;
 
-public class GenericFileDeleteProcessStrategy extends 
GenericFileProcessStrategySupport {
+public class GenericFileDeleteProcessStrategy<T> extends 
GenericFileProcessStrategySupport<T> {
 
     @Override
-    public void commit(GenericFileOperations operations, GenericFileEndpoint 
endpoint, GenericFileExchange exchange, GenericFile file) throws Exception {
+    public void commit(GenericFileOperations<T> operations, 
GenericFileEndpoint<T> endpoint, GenericFileExchange<T> exchange, 
GenericFile<T> file) throws Exception {
         // must invoke super
         super.commit(operations, endpoint, exchange, file);
 

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileExpressionRenamer.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileExpressionRenamer.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileExpressionRenamer.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileExpressionRenamer.java
 Mon Feb  2 12:41:34 2009
@@ -21,10 +21,10 @@
 import org.apache.camel.component.file.GenericFileExchange;
 import org.apache.camel.util.ObjectHelper;
 
-public class GenericFileExpressionRenamer implements GenericFileRenamer {
+public class GenericFileExpressionRenamer<T> implements GenericFileRenamer<T> {
     private Expression expression;
 
-    public GenericFile renameFile(GenericFileExchange exchange, GenericFile 
file) {
+    public GenericFile renameFile(GenericFileExchange<T> exchange, 
GenericFile<T> file) {
         ObjectHelper.notNull(expression, "expression");
 
         Object eval = expression.evaluate(exchange);

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileNoOpProcessStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileNoOpProcessStrategy.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileNoOpProcessStrategy.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileNoOpProcessStrategy.java
 Mon Feb  2 12:41:34 2009
@@ -16,6 +16,6 @@
  */
 package org.apache.camel.component.file.strategy;
 
-public class GenericFileNoOpProcessStrategy extends 
GenericFileProcessStrategySupport {
+public class GenericFileNoOpProcessStrategy<T> extends 
GenericFileProcessStrategySupport<T> {
 
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategySupport.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategySupport.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategySupport.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategySupport.java
 Mon Feb  2 12:41:34 2009
@@ -26,6 +26,7 @@
 public abstract class GenericFileProcessStrategySupport<T> implements 
GenericFileProcessStrategy<T> {
     private GenericFileExclusiveReadLockStrategy exclusiveReadLockStrategy;
 
+    @SuppressWarnings("unchecked")
     public boolean begin(GenericFileOperations<T> operations, 
GenericFileEndpoint<T> endpoint, GenericFileExchange<T> exchange, 
GenericFile<T> file) throws Exception {
         // is we use excluse read then acquire the exclusive read (waiting 
until we got it)
         if (exclusiveReadLockStrategy != null) {
@@ -39,12 +40,14 @@
         return true;
     }
 
+    @SuppressWarnings("unchecked")
     public void commit(GenericFileOperations<T> operations, 
GenericFileEndpoint<T> endpoint, GenericFileExchange<T> exchange, 
GenericFile<T> file) throws Exception {
         if (exclusiveReadLockStrategy != null) {
             exclusiveReadLockStrategy.releaseExclusiveReadLock(operations, 
file, exchange);
         }
     }
 
+    @SuppressWarnings("unchecked")
     public void rollback(GenericFileOperations<T> operations, 
GenericFileEndpoint<T> endpoint, GenericFileExchange<T> exchange, 
GenericFile<T> file) throws Exception {
         if (exclusiveReadLockStrategy != null) {
             exclusiveReadLockStrategy.releaseExclusiveReadLock(operations, 
file, exchange);

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileRenamer.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileRenamer.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileRenamer.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileRenamer.java
 Mon Feb  2 12:41:34 2009
@@ -22,7 +22,7 @@
 /**
  * Used for renaming files.
  */
-public interface GenericFileRenamer {
+public interface GenericFileRenamer<T> {
 
     /**
      * Renames the given file
@@ -31,6 +31,6 @@
      * @param file      the original file.
      * @return the renamed file name.
      */
-    GenericFile renameFile(GenericFileExchange exchange, GenericFile file);
+    GenericFile<T> renameFile(GenericFileExchange<T> exchange, GenericFile<T> 
file);
 
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/NewMarkerFileExclusiveReadLockStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/NewMarkerFileExclusiveReadLockStrategy.java?rev=739977&r1=739976&r2=739977&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/NewMarkerFileExclusiveReadLockStrategy.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/NewMarkerFileExclusiveReadLockStrategy.java
 Mon Feb  2 12:41:34 2009
@@ -41,10 +41,11 @@
 
     private GenericFileRenamer lockFileRenamer = new 
GenericFileDefaultRenamer("", DEFAULT_LOCK_FILE_POSTFIX);
 
+    @SuppressWarnings("unchecked")
     public boolean acquireExclusiveReadLock(GenericFileOperations<File> 
fileGenericFileOperations,
                                             GenericFile<File> file, Exchange 
exchange) throws Exception {
 
-        GenericFile newFile = lockFileRenamer.renameFile((GenericFileExchange) 
exchange, file);
+        GenericFile newFile = 
lockFileRenamer.renameFile((GenericFileExchange<File>) exchange, file);
         String lockFileName = newFile.getAbsoluteFileName();
         if (LOG.isTraceEnabled()) {
             LOG.trace("Locking the file: " + file + " using the lock file 
name: " + lockFileName);


Reply via email to