1. 17 Jul, 2017 3 commits
  2. 13 Jul, 2017 6 commits
    • Oleg Zhurakousky's avatar
      Minor polishing of InMemoryFunctionCatalog · 182317db
      Oleg Zhurakousky authored
      - Removed constructor in InMemoryFunctionCatalog that creates empty maps and no registrations since there is no way to register anything after catalog is created.
      - Refactored registration logic a bit more functional/concise in the FunctionRegistration constructor of InMemoryFunctionCatalog
      - Added additional assertions in tests
      
      rebased and removed the assertion that was causing certain test failures
      182317db
    • Dave Syer's avatar
      Add travis config · ae14c236
      Dave Syer authored
      ae14c236
    • Russ's avatar
      Fix README typos · b55417f7
      Russ authored
      b55417f7
    • Dave Syer's avatar
      Strangle old inspector methods · c8646d64
      Dave Syer authored
      Fixes gh-81
      c8646d64
    • Dave Syer's avatar
      Add new methods to FunctionInspector · d7d49858
      Dave Syer authored
      d7d49858
    • Dave Syer's avatar
      Adds routing keys in message headers · 7e966c73
      Dave Syer authored
      If the incoming message has a stream_routekey header, we use that
      to route the message to a named function. Also adding the header
      to messages coming out of suppliers.
      
      The biggest change here is sort of orthogonal: it fixes a bug where
      Spring Integration would subscribe twice to the same input channel
      if the FunctionCatalog contains both functions and consumers. Then
      when a message comes in it is dispatched to one or the other, but not
      both. So the routing key couldn't work without fixing that
      problem.
      7e966c73
  3. 11 Jul, 2017 1 commit
  4. 07 Jul, 2017 1 commit
  5. 06 Jul, 2017 1 commit
  6. 04 Jul, 2017 3 commits
  7. 03 Jul, 2017 3 commits
  8. 29 Jun, 2017 3 commits
  9. 28 Jun, 2017 6 commits
  10. 27 Jun, 2017 1 commit
  11. 26 Jun, 2017 1 commit
    • Dave Syer's avatar
      Update openwhisk README to use sample from the project · eb8d865b
      Dave Syer authored
      The io.spring sample referred to in the openwhisk README isn't
      in this repo, so users generally don't have it installed locally.
      This change makes it more obvious that you have to create your
      own.
      
      Also fixes the `wsk ...` command lines (the order of arguments
      was wrong - maybe the CLI changed?).
      eb8d865b
  12. 22 Jun, 2017 2 commits
    • Dave Syer's avatar
      Add support for Message handling in web functions · b6156250
      Dave Syer authored
      If the output is a Message we grab the headers from the first one
      and send those as response headers.
      
      A function can add headers to messages. The HTTP response will
      contain only headers that are in x-* _or_ were added to the message
      by user (i.e. they weren't in the request).
      We certainly do not want to pass through all HTTP headers (request
      headers can conflict with or invalidate response headers).
      b6156250
    • Dave Syer's avatar
      Ensure debug flag gets resolved in controller · 1d53cd12
      Dave Syer authored
      1d53cd12
  13. 16 Jun, 2017 1 commit
  14. 15 Jun, 2017 1 commit
    • Dave Syer's avatar
      Add support for Message<Foo> in stream apps · 0756dc33
      Dave Syer authored
      The FunctionInspector needs to be able to distinguish between a
      function of Flux<Foo> and a function of Flux<Message<Foo>>. Then
      it can do the conversion a level below.
      
      Only supports Message->Message or POJO->POJO (no mixtures), so there
      is only one new method in FunctionInspector.
      
      No support in the web endpoints yet. But it's probably not so hard
      to add.
      0756dc33
  15. 07 Jun, 2017 3 commits
  16. 02 Jun, 2017 1 commit
    • Dave Syer's avatar
      Make spring.cloud.function.stream.endpoint optional for stream apps · d641aae4
      Dave Syer authored
      If there is only one function you shouldn't have to set any configuration
      to get a stream app to run. This also implementation supports multiple
      functions, trying to guess which one to use based on the type of
      the incoming message payload. In principle that could be strategized
      as a simple router function (e.g. to look for a header with a function
      name).
      
      If there are functions and consumers in the same app, they will
      subscribe to the same input channel (and hence by default Spring
      Integration will load balance between them). This could also probably
      use some more features, to specify the desired behaviour.
      
      If user *does* supply spring.cloud.function.stream.endpoint then it
      is used and overrides all other possible routes.
      d641aae4
  17. 26 May, 2017 3 commits