When I try to use the "include" option when defining an SFTP endpoint, sometimes it works, other times the endpoint URI gets totally scrambled, depending on the regular express for "include". The point at which the URI gets scrambled is after URISupport.normalizeUri(uri) is called. I tried pre-URI-encoding the regular expression, but then it gets URI-encoded twice in that case.

Any ideas or corrections as to how I'm using the "include" option?

BTW, I this is a runtime-generated endpoint, so I can't use a GenericFileFilter<T> instance because I have yet to find an easy way to programmatically add objects to the Springframework bean factory (Camel registry) at runtime.

Thanks,

Chris

Parameters:
port=21000, binary=true, username=adpt5, host=localhost,
localWorkDirectory=target/res/tmp/local, idempotent=true, scheme=sftp,
directory=target/res/home, password=adpt5, move=archive/${file:name}, separator=UNIX,
include=(^[\w|\W&&[^_]]+)(_MKT_)(\d\d\d\d\d\d\d\d)(_(HISTORY))?(_(.[^\.]+))?\..+}

URI before  URISupport.normalizeUri(uri) is called:

sftp://localhost:21000?username=adpt5&binary=true&idempotent=true&localWorkDirectory=target%2Fres%2Ftmp%2Flocal&directory=target%2Fres%2Fhome&password=adpt5&separator=UNIX&move=archive%2F%24%7Bfile%3Aname%7D&include=%28%5E%5B%5Cw%7C%5CW%26%26%5B%5E_%5D%5D%2B%29%28_MKT_%29%28%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%29%28_%28HISTORY%29%29%3F%28_%28.%5B%5E%5C.%5D%2B%29%29%3F%5C..%2B

URI, scrambled after URISupport.normalizeUri(uri) is called:

Failed to resolve endpoint: sftp://localhost:21000?&%5B%5E_%5D%5D%2B%29%28_MKT_%29%28%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%29%28_%28HISTORY%29%29%3F%28_%28.%5B%5E%5C.%5D%2B%29%29%3F%5C..%2B&binary=true&directory=target%2Fres%2Fhome&idempotent=true&include=%28%5E%5B%5Cw%7C%5CW&localWorkDirectory=target%2Fres%2Ftmp%2Flocal&move=archive%2F%24%7Bfile%3Aname%7D&password=adpt5&separator=UNIX&username=adpt5 due to: There are 2 parameters that couldn't be set on the endpoint. Check the uri if the parameters are spelt correctly and that they are properties of the endpoint. Unknown parameters=[{=null, [^_]]+)(_MKT_)(\d\d\d\d\d\d\d\d)(_(HISTORY))?(_(.[^\.]+))?\..+=null}

Reply via email to