Advertisement
Guest User

Untitled

a guest
Mar 25th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.47 KB | None | 0 0
  1. import org.apache.xmlrpc.XmlRpcClient;
  2.  
  3. import java.io.IOException;
  4. import java.util.Objects;
  5. import java.util.Scanner;
  6. import java.util.Vector;
  7.  
  8.  
  9. public class RPCclient {
  10. public static void main(String[] args) {
  11. Scanner s = new Scanner(System.in);
  12. System.out.println("Enter IP address:");
  13. String ip_address = s.next();
  14. System.out.println("Enter port:");
  15. String port = s.next();
  16. String url = "http://" + ip_address + ":" + port;
  17. System.out.println(url);
  18. try {
  19. XmlRpcClient srv = new XmlRpcClient(url);
  20. AsyncClientHandlers asyncClientHandlers = new AsyncClientHandlers();
  21. Vector<Integer> asyncUsedParams = new Vector<>();
  22. String method = "";
  23. while(!Objects.equals(method, "exit")) {
  24. String showMethod = "show";
  25. String info = (String) srv.execute("myServer." + showMethod, asyncUsedParams);
  26. System.out.println("0. exit() - exit current program");
  27. System.out.println(info);
  28. method = s.next();
  29. Vector<Object> parameters = new Vector<>();
  30. if (!Objects.equals(method, "exit")) {
  31. switch (method) {
  32. case "asy" : {
  33. System.out.println("Podaj poczatek zakresu");
  34. parameters.add(Integer.valueOf(s.next()));
  35. System.out.println("Podaj koniec zakresu");
  36. parameters.add(Integer.valueOf(s.next()));
  37. System.out.println("Podaj sleep");
  38. parameters.add(Integer.valueOf(s.next()));
  39. break;
  40. }
  41. case "echo" : {
  42. System.out.println("Enter integer value");
  43. parameters.add(Integer.valueOf(s.next()));
  44. System.out.println("Enter integer value");
  45. parameters.add(Integer.valueOf(s.next()));
  46. break;
  47. }
  48. case "multiply" : {
  49. System.out.println("Enter double value");
  50. parameters.add(Double.valueOf(s.next()));
  51. System.out.println("Enter double value");
  52. parameters.add(Double.valueOf(s.next()));
  53. break;
  54. }
  55. case "parseIntAndDoubleToString" : {
  56. System.out.println("Enter integer value");
  57. parameters.add(Integer.valueOf(s.next()));
  58. System.out.println("Enter double value");
  59. parameters.add(Double.valueOf(s.next()));
  60. break;
  61. }
  62. case "upperAndConcatenate" : {
  63. System.out.println("Enter string value");
  64. parameters.add(s.next());
  65. System.out.println("Enter string value");
  66. parameters.add(s.next());
  67. break;
  68. }
  69. case "getTime" : {
  70. System.out.println("Enter place");
  71. parameters.add(s.next());
  72. System.out.println("Enter language");
  73. parameters.add(s.next());
  74. break;
  75. }
  76. }
  77. srv.executeAsync("myServer." + method, parameters, asyncClientHandlers);
  78. }
  79. }
  80. Vector<Integer> params = new Vector<>();
  81. params.addElement(13);
  82. params.addElement(21);
  83.  
  84. String echoMethod = "echo";
  85. int result = (Integer) srv.execute("myServer." + echoMethod, params);
  86.  
  87. System.out.println("Client evaluated method: " + echoMethod + ", and got result: " + result);
  88.  
  89. srv.executeAsync("myServer." + echoMethod, asyncUsedParams, asyncClientHandlers);
  90. System.out.println("Asynchronous called " + echoMethod);
  91. srv.executeAsync("myServer." + echoMethod, params, asyncClientHandlers);
  92. System.out.println("Asynchronous called " + echoMethod);
  93.  
  94. String upperMethod = "upperAndConcatenate";
  95. Vector<String> asyncUpperParams = new Vector<>();
  96. asyncUpperParams.addElement("dog");
  97. asyncUpperParams.addElement("cat");
  98. srv.executeAsync("myServer." + upperMethod, asyncUpperParams, asyncClientHandlers);
  99. System.out.println("Asynchronous called " + upperMethod);
  100.  
  101. String parseMethod = "parseIntAndDoubleToString";
  102. Vector<Object> asyncParseParams = new Vector<>();
  103. asyncParseParams.addElement(1);
  104. asyncParseParams.addElement(2.0);
  105. srv.executeAsync("myServer." + parseMethod, asyncParseParams, asyncClientHandlers);
  106. System.out.println("Asynchronous called " + parseMethod);
  107.  
  108. String asyMethod = "asy";
  109. srv.executeAsync("myServer." + asyMethod, asyncUsedParams, asyncClientHandlers);
  110. System.out.println("Asynchronous called " + asyMethod);
  111.  
  112. } catch(Exception e) {
  113. System.err.println("Client XML-RPC: " + e);
  114. }
  115. s.close();
  116. }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement