OK, one more "out the box" idea to consider. UpdateAttribute also has a mode which "clones" the flowfile if multiple rules are matched. Here's the specific quote from the UpdateAttribute documentation:
"If the FlowFile policy is set to "use clone", and multiple rules match, then a copy of the incoming FlowFile is created, such that the number of outgoing FlowFiles is equal to the number of rules that match. In other words, if two rules (A and B) both match, then there will be two outgoing FlowFiles, one for Rule A and one for Rule B. This can be useful in situations where you want to add an attribute to use as a flag for routing later. In this example, there will be two copies of the file available, one to route for the A path, and one to route for the B path" If you used the Advanced UI, you might be able to create rules which always match, but alter the value of the $foo parameter to your liking. If the "use clone" option was set, it would create a new flowfile for every rule matched. Thus if your array had 10 values, you'd have 10 rules, each one would set $foo to a different value. Out from UpdateAttribute, you'd end up with 10 flowfiles that could be sent to InvokeHTTP. That might be a fun way to solve this. :) On Thu, Mar 31, 2016 at 9:55 AM, Adam Taft <a...@adamtaft.com> wrote: > One (possibly bad) idea would be to try and loop your flow around the > UpdateAttribute processor using RouteOnAttribute. UpdateAttribute has an > "advanced" mode which would let you do logic something like: > > if $foo == "" then set $foo = "step 1"; > if $foo == "step 1" then set $foo = "step 2"; > if $foo == "step 2" then set $foo = "step 3"; > ... > if $foo == "step n" then set $foo = "finished"; > > The next part would be RouteOnAttribute, which would read the value of > $foo and if set to "finished" break the loop. Otherwise it would pass to > InvokeHTTP and then back to UpdateAttribute. The setup for this would be > tedious, but I think it would technically work. > > Just putting this out there for brainstorming purposes. > > > > > On Wed, Mar 30, 2016 at 6:25 PM, kkang <ki.k...@ds-iq.com> wrote: > >> I have been able to figure out how to GenerateFlowFile -> UpdateAttribute >> -> >> InvokeHttp to dynamically send a URL (example: >> https://somedomain.com?parameterx=${foo}); however, I need to do this N >> number of times and replace ${foo} with a known set of values. Is there a >> way to call InvokeHttp multiple times and use the next value for ${foo} >> automatically? >> >> >> >> -- >> View this message in context: >> http://apache-nifi-developer-list.39713.n7.nabble.com/Dynamic-URLs-using-InvokeHttp-from-an-array-tp8638.html >> Sent from the Apache NiFi Developer List mailing list archive at >> Nabble.com. >> > >