Author: davsclaus Date: Mon Jan 26 11:50:39 2009 New Revision: 737676 URL: http://svn.apache.org/viewvc?rev=737676&view=rev Log: CAMEL-1241: generic VFS in Camel. Work in progress.
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java camel/trunk/camel-core/src/main/java/org/apache/camel/util/IntrospectionSupport.java Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java?rev=737676&r1=737675&r2=737676&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java Mon Jan 26 11:50:39 2009 @@ -98,9 +98,12 @@ /** * Override if required. Perform some checks (and perhaps actions) before we - * poll + * poll. + * + * @return true to poll, false to skip this poll. */ - protected void prePollCheck() throws Exception { + protected boolean prePollCheck() throws Exception { + return true; } /** @@ -120,14 +123,6 @@ protected abstract void pollFile(String fileName, List<GenericFile<T>> fileList); /** - * Creates a GenericFile based on the given type T. - * - * @param file the concrete file type - * @return a new generic file representing the type - */ - protected abstract GenericFile<T> asGenericFile(T file); - - /** * Processes the exchange * * @param exchange the exchange Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java?rev=737676&r1=737675&r2=737676&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java Mon Jan 26 11:50:39 2009 @@ -31,7 +31,7 @@ * Generic file producer */ public class GenericFileProducer<T> extends DefaultProducer { - private final transient Log log = LogFactory.getLog(GenericFileProducer.class); + protected final transient Log log = LogFactory.getLog(getClass()); private GenericFileOperations<T> operations; protected GenericFileProducer(GenericFileEndpoint<T> endpoint, GenericFileOperations<T> operations) { Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/util/IntrospectionSupport.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/IntrospectionSupport.java?rev=737676&r1=737675&r2=737676&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/util/IntrospectionSupport.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/util/IntrospectionSupport.java Mon Jan 26 11:50:39 2009 @@ -50,6 +50,26 @@ private IntrospectionSupport() { } + /** + * Copies the properties from the source to the target + * @param source source object + * @param target target object + * @param optionPrefix optional option preifx (can be null) + * @return true if properties is copied, false if something went wrong + */ + public static boolean copyProperties(Object source, Object target, String optionPrefix) { + Map properties = new LinkedHashMap(); + if (!getProperties(source, properties, optionPrefix)) { + return false; + } + try { + return setProperties(target, properties, optionPrefix); + } catch (Exception e) { + LOG.debug("Can not copy properties to target: " + target, e); + return false; + } + } + public static boolean getProperties(Object target, Map properties, String optionPrefix) { ObjectHelper.notNull(target, "target"); ObjectHelper.notNull(properties, "properties");