Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

SS supports many REST endpoints, some of them are used by POL. POL uses the following 2 SS REST two endpoints:

  • /alive
    This returns a timestamp (an a long integer) to indicate the start time of the SS. (long int, plain text)
    Used for adding a SS in discoveryAMQ() if POL gets a valid long int, and removing a SS in heartbeat() if POL does not get a valid long int from the ep.
  • /applications
    This returns a JSON array, such as "[{"alias":"daffodil","conversions":[{"inputs":["csv"],"outputs":["xml"]},{"inputs":["pgm"],"outputs":["xml"]}]},{"alias":"flac","conversions":[{"inputs":["aif","aiff","fla","flac","wav"],"outputs":["aif","aiff","fla","flac","wav"]}]}}}".
    Used for adding a SS and updating the IO graph in discoveryAMQ().

  Proposed design:

  1. SS registration with polyglot.
    • Add 1 exchange/queue for SS registration with polyglot.
      Set its TTL to say 5 secs, so msgs are discarded in such time.
    • SS publishes msgs to this queue, regarding aliveness, and conversion capabilities.
  2. In "checkin", SS posts the content of a converted file and Polyglot saves it, instead of creating a "<file>.url" file.