Guest User

Untitled

a guest
Apr 24th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. require 'spqr/spqr'
  2. require 'spqr/app'
  3. require 'logger'
  4.  
  5. class Hello
  6. include SPQR::Manageable
  7. def hello(args)
  8. @people_greeted ||= 0
  9. @people_greeted = @people_greeted + 1
  10. args["result"] = "Hello, #{args['name']}!"
  11. end
  12.  
  13. spqr_expose :hello do |args|
  14. args.declare :name, :lstr, :in
  15. args.declare :result, :lstr, :out
  16. end
  17.  
  18. # This is for the service_name property
  19. def service_name
  20. @service_name = "HelloAgent"
  21. end
  22.  
  23. spqr_package :hello
  24. spqr_class :Hello
  25. spqr_statistic :people_greeted, :int
  26. spqr_property :service_name, :lstr
  27.  
  28. # These should return the same object for the lifetime of the agent
  29. # app, since this example has no persistent objects.
  30. def Hello.find_all
  31. @@hellos ||= [Hello.new]
  32. end
  33.  
  34. def Hello.find_by_id(id)
  35. @@hellos ||= [Hello.new]
  36. @@hellos[0]
  37. end
  38. end
  39.  
  40. app = SPQR::App.new(:loglevel => :debug)
  41. app.register Hello
  42.  
  43. app.main
Add Comment
Please, Sign In to add comment