Guest User

Untitled

a guest
May 26th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.41 KB | None | 0 0
  1. //restituisce la lista di utenti
  2. @GET
  3. @Path("/getlistanodi")
  4. @Produces({"application/json", "application/xml"})
  5. public Response getListaNodi() {
  6.  
  7. return Response.ok(NodiEdge.getInstance()).build();
  8. }
  9.  
  10. @Path("/add")
  11. @POST
  12. @Consumes({"application/json", "application/xml"})
  13. public Response addNodo(Nodo u) {
  14.  
  15. NodiEdge.getInstance().addNodo(u);
  16. return Response.ok().build();
  17. }
  18.  
  19. @Path("/remove/{idnodo}")
  20. @DELETE
  21. @Produces({"application/json", "application/xml"})
  22. public Response removeNodo(@PathParam("idnodo") String id) {
  23.  
  24. NodiEdge.getInstance().removeNodo(id);
  25. return Response.ok().build();
  26. }
  27.  
  28. <filter>
  29. <filter-name>UploadFilter</filter-name>
  30. <filter-class>com.sun.webui.jsf.util.UploadFilter</filter-class>
  31. <init-param>
  32. <param-name>maxSize</param-name>
  33. <param-value>-1</param-value>
  34. </init-param>
  35. </filter>
  36. <filter-mapping>
  37. <filter-name>UploadFilter</filter-name>
  38. <servlet-name>FacesServlet</servlet-name>
  39. </filter-mapping>
  40. <servlet>
  41. <servlet-name>FacesServlet</servlet-name>
  42. <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
  43. <load-on-startup>1</load-on-startup>
  44. </servlet>
  45. <servlet>
  46. <servlet-name>ThemeServlet</servlet-name>
  47. <servlet-class>com.sun.webui.theme.ThemeServlet</servlet-class>
  48. <load-on-startup>2</load-on-startup>
  49. </servlet>
  50. <servlet>
  51. <servlet-name>DownloadServlet</servlet-name>
  52. <servlet-class>org.glassfish.admingui.common.servlet.DownloadServlet</servlet-class>
  53. <init-param>
  54. <param-name>ContentSources</param-name>
  55. <param-value>
  56. org.glassfish.admingui.common.servlet.LBConfigContentSource,
  57. org.glassfish.admingui.common.servlet.ClientStubsContentSource,
  58. org.glassfish.admingui.common.servlet.LogFilesContentSource
  59. org.glassfish.admingui.common.servlet.LogViewerContentSource
  60. </param-value>
  61. </init-param>
  62. <init-param>
  63. <param-name>contentSourceId</param-name>
  64. <param-value>LBConfig</param-value>
  65. </init-param>
  66. </servlet>
  67. <servlet-mapping>
  68. <servlet-name>DownloadServlet</servlet-name>
  69. <url-pattern>/download/*</url-pattern>
  70. </servlet-mapping>
  71. <servlet-mapping>
  72. <servlet-name>FacesServlet</servlet-name>
  73. <url-pattern>/resource/*</url-pattern>
  74. </servlet-mapping>
  75. <servlet-mapping>
  76. <servlet-name>FacesServlet</servlet-name>
  77. <url-pattern>/html/*</url-pattern>
  78. </servlet-mapping>
  79. <servlet-mapping>
  80. <servlet-name>FacesServlet</servlet-name>
  81. <url-pattern>/faces/*</url-pattern>
  82. </servlet-mapping>
  83. <servlet-mapping>
  84. <servlet-name>FacesServlet</servlet-name>
  85. <url-pattern>*.jsf</url-pattern>
  86. </servlet-mapping>
  87. <servlet-mapping>
  88. <servlet-name>ThemeServlet</servlet-name>
  89. <url-pattern>/theme/*</url-pattern>
  90. </servlet-mapping>
  91. <session-config>
  92. <cookie-config>
  93. <http-only>true</http-only>
  94. </cookie-config>
  95. </session-config>
  96. <!-- following mapping added to avoid JSF warning. refer to GLASSFISH-19403 -->
  97. <mime-mapping>
  98. <extension>jsp</extension>
  99. <mime-type>text/html</mime-type>
  100. </mime-mapping>
  101.  
  102. <welcome-file-list>
  103. <welcome-file>/index.jsf</welcome-file>
  104. </welcome-file-list>
  105. <error-page>
  106. <exception-type>javax.faces.application.ViewExpiredException</exception-type>
  107. <location>/</location>
  108. </error-page>
  109.  
  110. <login-config>
  111. <auth-method>FORM</auth-method>
  112. <realm-name>admin-realm</realm-name>
  113. <form-login-config>
  114. <form-login-page>/login.jsf</form-login-page>
  115. <form-error-page>/loginError.jsf</form-error-page>
  116. </form-login-config>
  117. </login-config>
  118. <security-role>
  119. <role-name>admin</role-name>
  120. </security-role>
  121.  
  122. @XmlElement(name="nodi")
  123. private List<Nodo> listaNodi;
  124. private static NodiEdge instance;
  125.  
  126. private int distNodi;
  127.  
  128. public NodiEdge() {
  129.  
  130. listaNodi = new ArrayList<Nodo>();
  131. }
  132.  
  133. //singleton
  134. public synchronized static NodiEdge getInstance(){
  135.  
  136. if(instance==null)
  137. instance = new NodiEdge();
  138. return instance;
  139. }
  140.  
  141. public synchronized List<Nodo> getListaNodi() {
  142.  
  143. return new ArrayList<>(listaNodi);
  144. }
  145.  
  146. public synchronized List<Nodo> addNodo(Nodo u)
  147. {
  148. List<Nodo> copiaLista = getListaNodi();
  149.  
  150. if (listaNodi.size()==0)
  151. listaNodi.add(u);
  152. else {
  153. for (Nodo n : copiaLista) {
  154. if (n.getID().toLowerCase().equals(u.getID().toLowerCase())) {
  155. System.err.println("Inserimento negato! Identificatore già esistente.");
  156. break;
  157. }
  158. else {
  159. distNodi = Math.abs((u.getX() - n.getX()) + (u.getY() - n.getY()));
  160. if (distNodi < 20) {
  161. System.err.println("Inserimento negato! Posizione troppo vicina ad altri nodi.");
  162. break;
  163. } else {
  164. listaNodi.add(u);
  165. System.out.println("ID nodo: " + n.getID() + ", indirizzo IP: " + n.getIPaddress() +
  166. ", n° porta: " + n.getPNd());
  167. }
  168. }
  169.  
  170. }
  171.  
  172. }
  173.  
  174. return copiaLista;
  175.  
  176.  
  177. }
  178.  
  179. public synchronized void removeNodo(String id)
  180. {
  181. List<Nodo> copiaLista = getListaNodi();
  182.  
  183. if (listaNodi.size()==0)
  184. System.err.println("Operazione impossibile! Nessun nodo nella griglia");
  185. else {
  186. for (Nodo n : copiaLista) {
  187. if (!n.getID().toLowerCase().equals(id.toLowerCase()))
  188. System.err.println("Nodo non presente nella griglia.");
  189. else {
  190. listaNodi.remove(n);
  191. System.out.println("Nodo eliminato.");
  192. break;
  193. }
  194.  
  195. }
  196.  
  197. }
Add Comment
Please, Sign In to add comment