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}