Advertisement
Guest User

Untitled

a guest
May 28th, 2016
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 47.03 KB | None | 0 0
  1. package wolffsoft.addressmanagermvcjavafxview.ui;
  2.  
  3. wolffsoft.addressmanagermvcjavafx.ui.listeners.MainWindowEventHandlerAddMVCJavaFZView;
  4. import wolffsoft.addressmanagermvcjavafx.ui.listeners.MainWindowEventHandlerClearSearchMVCJavaFXView;
  5. import wolffsoft.addressmanagermvcjavafx.ui.listeners.MainWindowEventHandlerOpenUpdateMVCJavaFXView;
  6. import wolffsoft.addressmanagermvcjavafx.ui.listeners.MainWindowEventHandlerRemoveMVCJavaFXView;
  7. import wolffsoft.addressmanagermvcjavafx.ui.listeners.MainWindowEventHandlerSearchMVCJavaFXView;
  8.  
  9. public class AddressManagerMVCJavaFXView {
  10. //private final AddressManagerMVCJavaFXModel model = new AddressManagerMVCJavaFXModel();
  11. private final AddressManagerMVCUpdateJavaFXView setUpdateV = new AddressManagerMVCUpdateJavaFXView();
  12. private final Button add = new Button("Add Credentails");
  13. private final Button search = new Button("Search Credentails");
  14. private final Button delete = new Button("Delete Credentails");
  15. private final Button clearSearch = new Button("Clear Credentails");
  16. private final Button updateView = new Button("Update Credentails");
  17. private final Label inputFields = new Label("Wolff Address Manager Input Credentials");
  18. private final Label wolffAddressManager = new Label("Wolff Address Manager Show Credentials");
  19. private final Label companyNameLabel = new Label("Company Name:");
  20. private final Label firstNameLabel = new Label("First Name:");
  21. private final Label lastNameLabel = new Label("Last Name:");
  22. private final Label emailAddressLabel = new Label("Email Address:");
  23. private final Label reTypeEmailAddressLabel = new Label("Re-type Email Address:");
  24. private final Label streetNumberLabel = new Label("Street / Number / Add:");
  25. private final Label zipcodeCityLabel = new Label("ZipCide / City:");
  26. private final Label searchEmailAddressLabel = new Label("Email Address:");
  27. private final Label deleteEmailAddressLabel = new Label("Email Address:");
  28. private final TextField companyNameTextField = new TextField();
  29. private final TextField firstNameTextField = new TextField();
  30. private final TextField lastNameTextField = new TextField();
  31. private final TextField emailAddressTextField = new TextField();
  32. private final TextField reTypeEmailAddressTextField = new TextField();
  33. private final TextField streetTextField = new TextField();
  34. private final TextField numberTextField = new TextField();
  35. private final TextField additiveTextField = new TextField();
  36. private final TextField zipCodeTextField = new TextField();
  37. private final TextField cityTextField = new TextField();
  38. private final TextField searchEmailAddressTextField = new TextField();
  39. private final TextField deleteEmailAddressTextField = new TextField();
  40. private final TextArea textArea = new TextArea();
  41. private final Pane rootPane = new Pane();
  42. private final Pane pane1 = new Pane();
  43. private final Pane pane2 = new Pane();
  44.  
  45.  
  46. public void start(Stage primaryStage) {
  47. AddressManagerMVCJavaFXModel model = new AddressManagerMVCJavaFXModel();
  48. // buttons for pane1
  49. add.setPrefSize(380, 20);
  50. add.setLayoutX(10.0);
  51. add.setLayoutY(240.0);
  52. add.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  53. EventHandler addCredentails = new MainWindowEventHandlerAddMVCJavaFZView(this, companyNameTextField, firstNameTextField, lastNameTextField, emailAddressTextField, reTypeEmailAddressTextField, streetTextField, numberTextField, additiveTextField, zipCodeTextField, cityTextField);
  54. add.setOnAction(addCredentails);
  55.  
  56. search.setPrefSize(380, 20);
  57. search.setLayoutX(10.0);
  58. search.setLayoutY(330.0);
  59. search.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  60. EventHandler searchCredentials = new MainWindowEventHandlerSearchMVCJavaFXView(this, searchEmailAddressTextField);
  61. search.setOnAction(searchCredentials);
  62.  
  63. delete.setPrefSize(380, 20);
  64. delete.setLayoutX(10.0);
  65. delete.setLayoutY(410.0);
  66. delete.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  67. EventHandler deleteCredentials = new MainWindowEventHandlerRemoveMVCJavaFXView(deleteEmailAddressTextField);
  68. delete.setOnAction(deleteCredentials);
  69.  
  70. clearSearch.setPrefSize(380, 20);
  71. clearSearch.setLayoutX(10.0);
  72. clearSearch.setLayoutY(470.0);
  73. clearSearch.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  74. EventHandler clear = new MainWindowEventHandlerClearSearchMVCJavaFXView(this);
  75. clearSearch.setOnAction(clear);
  76.  
  77. updateView.setPrefSize(380, 20);
  78. updateView.setLayoutX(10.0);
  79. updateView.setLayoutY(530.0);
  80. updateView.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  81. EventHandler setUpdateView = new MainWindowEventHandlerOpenUpdateMVCJavaFXView(setUpdateV);
  82. updateView.setOnAction(setUpdateView);
  83.  
  84. // Labels for pane1
  85. companyNameLabel.setPrefSize(100, 30);
  86. companyNameLabel.setLayoutX(10.0);
  87. companyNameLabel.setLayoutY(20.0);
  88.  
  89.  
  90. firstNameLabel.setPrefSize(100, 30);
  91. firstNameLabel.setLayoutX(10.0);
  92. firstNameLabel.setLayoutY(50.0);
  93.  
  94. lastNameLabel.setPrefSize(100, 30);
  95. lastNameLabel.setLayoutX(10.0);
  96. lastNameLabel.setLayoutY(80.0);
  97.  
  98. emailAddressLabel.setPrefSize(100, 30);
  99. emailAddressLabel.setLayoutX(10.0);
  100. emailAddressLabel.setLayoutY(110.0);
  101.  
  102. reTypeEmailAddressLabel.setPrefSize(140, 30);
  103. reTypeEmailAddressLabel.setLayoutX(10.0);
  104. reTypeEmailAddressLabel.setLayoutY(140.0);
  105.  
  106. streetNumberLabel.setPrefSize(140, 30);
  107. streetNumberLabel.setLayoutX(10.0);
  108. streetNumberLabel.setLayoutY(170.0);
  109.  
  110. zipcodeCityLabel.setPrefSize(100, 30);
  111. zipcodeCityLabel.setLayoutX(10.0);
  112. zipcodeCityLabel.setLayoutY(200.0);
  113.  
  114. searchEmailAddressLabel.setPrefSize(100, 30);
  115. searchEmailAddressLabel.setLayoutX(10.0);
  116. searchEmailAddressLabel.setLayoutY(290.0);
  117.  
  118. deleteEmailAddressLabel.setPrefSize(100, 30);
  119. deleteEmailAddressLabel.setLayoutX(10.0);
  120. deleteEmailAddressLabel.setLayoutY(370.0);
  121.  
  122. // TextFields for pane1
  123. companyNameTextField.setPrefSize(245, 20);
  124. companyNameTextField.setLayoutX(145);
  125. companyNameTextField.setLayoutY(20.0);
  126.  
  127. companyNameTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  128.  
  129.  
  130. firstNameTextField.setPrefSize(245, 20);
  131. firstNameTextField.setLayoutX(145.0);
  132. firstNameTextField.setLayoutY(50.0);
  133. firstNameTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  134.  
  135. lastNameTextField.setPrefSize(245, 20.0);
  136. lastNameTextField.setLayoutX(145.0);
  137. lastNameTextField.setLayoutY(80.0);
  138. lastNameTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  139.  
  140. emailAddressTextField.setPrefSize(245, 20.0);
  141. emailAddressTextField.setLayoutX(145.0);
  142. emailAddressTextField.setLayoutY(110.0);
  143. emailAddressTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  144.  
  145.  
  146. reTypeEmailAddressTextField.setPrefSize(245, 20);
  147. reTypeEmailAddressTextField.setLayoutX(145.0);
  148. reTypeEmailAddressTextField.setLayoutY(140.0);
  149. reTypeEmailAddressTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  150.  
  151. streetTextField.setPrefSize(142.5, 20);
  152. streetTextField.setLayoutX(145.0);
  153. streetTextField.setLayoutY(170.0);
  154. streetTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  155.  
  156. numberTextField.setPrefSize(43, 20);
  157. numberTextField.setLayoutX(297.5);
  158. numberTextField.setLayoutY(170.0);
  159. numberTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  160.  
  161. additiveTextField.setPrefSize(40, 20);
  162. additiveTextField.setLayoutX(350.5);
  163. additiveTextField.setLayoutY(170.0);
  164. additiveTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  165.  
  166. zipCodeTextField.setPrefSize(117.5, 20);
  167. zipCodeTextField.setLayoutX(145.0);
  168. zipCodeTextField.setLayoutY(200.0);
  169. zipCodeTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  170.  
  171. cityTextField.setPrefSize(117.5, 20);
  172. cityTextField.setLayoutX(272.5);
  173. cityTextField.setLayoutY(200.0);
  174. cityTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  175.  
  176. searchEmailAddressTextField.setPrefSize(245, 20);
  177. searchEmailAddressTextField.setLayoutX(145.0);
  178. searchEmailAddressTextField.setLayoutY(290.0);
  179. searchEmailAddressTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  180.  
  181. deleteEmailAddressTextField.setPrefSize(245, 20);
  182. deleteEmailAddressTextField.setLayoutX(145.0);
  183. deleteEmailAddressTextField.setLayoutY(370.0);
  184. deleteEmailAddressTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  185.  
  186. // set pane1 lay-out
  187. pane1.setLayoutX(10.0);
  188. pane1.setLayoutY(20.0);
  189. pane1.setPrefSize(400, 635);
  190. pane1.setPadding(new Insets(20.0, 20.0, 20.0, 20.0));
  191. pane1.setStyle("-fx-background-color: lightgrey; -fx-background-radius: 10px; -fx-effect: innershadow(two-pass-box, gray, 5, 0.5, 1, 1);");
  192.  
  193. // add Labels to pane1
  194. pane1.getChildren().add(companyNameLabel);
  195. pane1.getChildren().add(firstNameLabel);
  196. pane1.getChildren().add(lastNameLabel);
  197. pane1.getChildren().add(emailAddressLabel);
  198. pane1.getChildren().add(reTypeEmailAddressLabel);
  199. pane1.getChildren().add(streetNumberLabel);
  200. pane1.getChildren().add(zipcodeCityLabel);
  201. pane1.getChildren().add(add);
  202. pane1.getChildren().add(searchEmailAddressLabel);
  203. pane1.getChildren().add(search);
  204. pane1.getChildren().add(deleteEmailAddressLabel);
  205. pane1.getChildren().add(delete);
  206. pane1.getChildren().add(clearSearch);
  207. pane1.getChildren().add(updateView);
  208.  
  209. // add TextFields to pane1
  210. pane1.getChildren().add(companyNameTextField);
  211. pane1.getChildren().add(firstNameTextField);
  212. pane1.getChildren().add(lastNameTextField);
  213. pane1.getChildren().add(emailAddressTextField);
  214. pane1.getChildren().add(reTypeEmailAddressTextField);
  215. pane1.getChildren().add(streetTextField);
  216. pane1.getChildren().add(numberTextField);
  217. pane1.getChildren().add(additiveTextField);
  218. pane1.getChildren().add(zipCodeTextField);
  219. pane1.getChildren().add(cityTextField);
  220. pane1.getChildren().add(searchEmailAddressTextField);
  221. pane1.getChildren().add(deleteEmailAddressTextField);
  222.  
  223. // set Pane for adding TextArea
  224. pane2.setLayoutX(430.0);
  225. pane2.setLayoutY(20.0);
  226. pane2.setPrefSize(360, 635);
  227. pane2.setStyle("-fx-background-color: lightgrey; -fx-background-radius: 10px; -fx-effect: innershadow(two-pass-box, gray, 5, 0.5, 1, 1);");
  228.  
  229. textArea.setLayoutX(10.0);
  230. textArea.setLayoutY(15.0);
  231. textArea.setPrefSize(340, 605);
  232. textArea.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  233. pane2.getChildren().add(textArea);
  234.  
  235. //set label on rootPane for pane1, pane2
  236. inputFields.setLayoutX(10.0);
  237. inputFields.setLayoutY(0.0);
  238.  
  239. wolffAddressManager.setLayoutX(430.0);
  240. wolffAddressManager.setLayoutY(0.0);
  241.  
  242. // rootPane for adding 2 panes
  243. rootPane.setStyle("-fx-background-color: lightgrey;");
  244.  
  245. // add panes, nodes to rootPane
  246. rootPane.getChildren().addAll(pane1, pane2, wolffAddressManager, inputFields);
  247. model.setRootPane(rootPane);
  248. model.setScene(new Scene(model.getRootPane(), 800, 675));
  249. rootPane.getChildren().removeAll();
  250. primaryStage.setTitle("Wolff Address Manager");
  251. primaryStage.setScene(model.getScene());
  252. primaryStage.show();
  253.  
  254. }
  255.  
  256. public void setTextArea(String text) {
  257. textArea.setText(text);
  258. }
  259.  
  260.  
  261. public String getTextArea() {
  262. return textArea.getText();
  263. }
  264. }
  265.  
  266. package wolffsoft.addressmanagermvcjavafxview.ui;
  267. public class AddressManagerMVCUpdateJavaFXView extends Stage {
  268.  
  269.  
  270. private final AddressManagerMVCJavaFXModel model = new AddressManagerMVCJavaFXModel();
  271.  
  272. private final Button clearTextArea = new Button("Clear TextView");
  273. private final Button updateCredentails = new Button("Update Credentails");
  274. private final Label inputFields = new Label("Wolff Address Manager Input Credentials");
  275. private final Label wolffAddressManager = new Label("Wolff Address Manager Show Credentials");
  276. private final Label emailCheckUpdateLabel = new Label("Email for Update:");
  277. private final Label companyNameLabel = new Label("Company Name:");
  278. private final Label firstNameLabel = new Label("First Name:");
  279. private final Label lastNameLabel = new Label("Last Name:");
  280. private final Label emailAddressLabel = new Label("Email Address:");
  281. private final Label streetNumberLabel = new Label("Street / Number / Add:");
  282. private final Label zipcodeCityLabel = new Label("ZipCide / City:");
  283. private final TextField emailCheckUpdateTextField = new TextField();
  284. private final TextField companyNameTextField = new TextField();
  285. private final TextField firstNameTextField = new TextField();
  286. private final TextField lastNameTextField = new TextField();
  287. private final TextField emailAddressTextField = new TextField();
  288. private final TextField streetTextField = new TextField();
  289. private final TextField numberTextField = new TextField();
  290. private final TextField additiveTextField = new TextField();
  291. private final TextField zipCodeTextField = new TextField();
  292. private final TextField cityTextField = new TextField();
  293. private final TextArea textArea = new TextArea();
  294. private final Pane paneUpdate = new Pane();
  295. private final Pane paneUpdate1 = new Pane();
  296. private final Pane paneUpdate2 = new Pane();
  297.  
  298. public Scene createScene() {
  299. // buttons for paneUpdate1
  300. updateCredentails.setPrefSize(380, 20);
  301. updateCredentails.setLayoutX(10.0);
  302. updateCredentails.setLayoutY(250.0);
  303. updateCredentails.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  304. EventHandler updateCredentials = new UpdateWindowEventHandlerUpdateMVCJavaFXView(this, emailCheckUpdateTextField, companyNameTextField, firstNameTextField, lastNameTextField, emailAddressTextField, streetTextField, numberTextField, additiveTextField, zipCodeTextField, cityTextField);
  305. updateCredentails.setOnAction(updateCredentials);
  306.  
  307. clearTextArea.setPrefSize(380, 20);
  308. clearTextArea.setLayoutX(10.0);
  309. clearTextArea.setLayoutY(290.0);
  310. clearTextArea.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  311. EventHandler clear = new UpdateViewEventHandlerClearSearchMVCJavaFXView(this);
  312. clearTextArea.setOnAction(clear);
  313.  
  314. // Labels paneUpdate1
  315. emailCheckUpdateLabel.setPrefSize(140, 30);
  316. emailCheckUpdateLabel.setLayoutX(10.0);
  317. emailCheckUpdateLabel.setLayoutY(20.0);
  318.  
  319. companyNameLabel.setPrefSize(100, 30);
  320. companyNameLabel.setLayoutX(10.0);
  321. companyNameLabel.setLayoutY(50.0);
  322.  
  323. firstNameLabel.setPrefSize(100, 30);
  324. firstNameLabel.setLayoutX(10.0);
  325. firstNameLabel.setLayoutY(80.0);
  326.  
  327. lastNameLabel.setPrefSize(100, 30);
  328. lastNameLabel.setLayoutX(10.0);
  329. lastNameLabel.setLayoutY(110.0);
  330.  
  331. emailAddressLabel.setPrefSize(100, 30);
  332. emailAddressLabel.setLayoutX(10.0);
  333. emailAddressLabel.setLayoutY(140.0);
  334.  
  335. streetNumberLabel.setPrefSize(140, 30);
  336. streetNumberLabel.setLayoutX(10.0);
  337. streetNumberLabel.setLayoutY(170.0);
  338.  
  339. zipcodeCityLabel.setPrefSize(100, 30);
  340. zipcodeCityLabel.setLayoutX(10.0);
  341. zipcodeCityLabel.setLayoutY(200.0);
  342.  
  343. // TextFields paneUpdate1
  344. emailCheckUpdateTextField.setPrefSize(245, 20);
  345. emailCheckUpdateTextField.setLayoutX(145.0);
  346. emailCheckUpdateTextField.setLayoutY(20.0);
  347. emailCheckUpdateTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  348.  
  349. companyNameTextField.setPrefSize(245, 20);
  350. companyNameTextField.setLayoutX(145);
  351. companyNameTextField.setLayoutY(50.0);
  352. companyNameTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  353.  
  354.  
  355. firstNameTextField.setPrefSize(245, 20);
  356. firstNameTextField.setLayoutX(145.0);
  357. firstNameTextField.setLayoutY(80.0);
  358. firstNameTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  359.  
  360. lastNameTextField.setPrefSize(245, 20.0);
  361. lastNameTextField.setLayoutX(145.0);
  362. lastNameTextField.setLayoutY(110.0);
  363. lastNameTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  364.  
  365. emailAddressTextField.setPrefSize(245, 20.0);
  366. emailAddressTextField.setLayoutX(145.0);
  367. emailAddressTextField.setLayoutY(140.0);
  368. emailAddressTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  369.  
  370. streetTextField.setPrefSize(142.5, 20);
  371. streetTextField.setLayoutX(145.0);
  372. streetTextField.setLayoutY(170.0);
  373. streetTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  374.  
  375. numberTextField.setPrefSize(43, 20);
  376. numberTextField.setLayoutX(297.5);
  377. numberTextField.setLayoutY(170.0);
  378. numberTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  379.  
  380. additiveTextField.setPrefSize(40, 20);
  381. additiveTextField.setLayoutX(350.5);
  382. additiveTextField.setLayoutY(170.0);
  383. additiveTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  384.  
  385. zipCodeTextField.setPrefSize(117.5, 20);
  386. zipCodeTextField.setLayoutX(145.0);
  387. zipCodeTextField.setLayoutY(200.0);
  388. zipCodeTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  389.  
  390. cityTextField.setPrefSize(117.5, 20);
  391. cityTextField.setLayoutX(272.5);
  392. cityTextField.setLayoutY(200.0);
  393. cityTextField.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  394.  
  395. // set paneUpdate1 lay-out
  396. paneUpdate1.setLayoutX(10.0);
  397. paneUpdate1.setLayoutY(20.0);
  398. paneUpdate1.setPrefSize(400, 635);
  399. paneUpdate1.setPadding(new Insets(20.0, 20.0, 20.0, 20.0));
  400. paneUpdate1.setStyle("-fx-background-color: lightgrey; -fx-background-radius: 10px; -fx-effect: innershadow(two-pass-box, gray, 5, 0.5, 1, 1);");
  401.  
  402. // add Buttons To paneUpdate1
  403. paneUpdate1.getChildren().add(updateCredentails);
  404. paneUpdate1.getChildren().add(clearTextArea);
  405.  
  406. // add Labels to paneUpdate1
  407. paneUpdate1.getChildren().add(emailCheckUpdateLabel);
  408. paneUpdate1.getChildren().add(companyNameLabel);
  409. paneUpdate1.getChildren().add(firstNameLabel);
  410. paneUpdate1.getChildren().add(lastNameLabel);
  411. paneUpdate1.getChildren().add(emailAddressLabel);
  412. paneUpdate1.getChildren().add(streetNumberLabel);
  413. paneUpdate1.getChildren().add(zipcodeCityLabel);
  414.  
  415.  
  416. // add TextFields to pane1
  417. paneUpdate1.getChildren().add(emailCheckUpdateTextField);
  418. paneUpdate1.getChildren().add(companyNameTextField);
  419. paneUpdate1.getChildren().add(firstNameTextField);
  420. paneUpdate1.getChildren().add(lastNameTextField);
  421. paneUpdate1.getChildren().add(emailAddressTextField);
  422. paneUpdate1.getChildren().add(streetTextField);
  423. paneUpdate1.getChildren().add(numberTextField);
  424. paneUpdate1.getChildren().add(additiveTextField);
  425. paneUpdate1.getChildren().add(zipCodeTextField);
  426. paneUpdate1.getChildren().add(cityTextField);
  427.  
  428. // set Pane for adding TextArea
  429. paneUpdate2.setLayoutX(430.0);
  430. paneUpdate2.setLayoutY(20.0);
  431. paneUpdate2.setPrefSize(360, 635);
  432. paneUpdate2.setStyle("-fx-background-color: lightgrey; -fx-background-radius: 10px; -fx-effect: innershadow(two-pass-box, gray, 5, 0.5, 1, 1);");
  433.  
  434. textArea.setLayoutX(10.0);
  435. textArea.setLayoutY(15.0);
  436. textArea.setPrefSize(340, 605);
  437. textArea.setStyle("-fx-effect: innershadow(two-pass-box, gray, 5, 0.3, 1, 1);");
  438. paneUpdate2.getChildren().add(textArea);
  439.  
  440. // set label on paneUpdate for paneUpdate1, paneUpdate2
  441. inputFields.setLayoutX(10.0);
  442. inputFields.setLayoutY(0.0);
  443.  
  444. wolffAddressManager.setLayoutX(430.0);
  445. wolffAddressManager.setLayoutY(0.0);
  446.  
  447. // paneUpdate for adding 2 panes
  448. paneUpdate.setStyle("-fx-background-color: lightgrey;");
  449.  
  450. // add panes, nodes to paneUpdate
  451. paneUpdate.getChildren().addAll(paneUpdate1, paneUpdate2, wolffAddressManager, inputFields);
  452. model.setPaneUpdate(paneUpdate);
  453. model.setSceneUpdate(new Scene(model.getPaneUpdate(), 800, 675));
  454. return model.getSceneUpdate();
  455. }
  456.  
  457. public void setTextArea(String text) {
  458. textArea.setText(text);
  459. }
  460.  
  461. public String getTextArea() {
  462. return textArea.getText();
  463. }
  464. }
  465.  
  466. public class AddressManagerMVCJavaFXModel {
  467. private String updateEmailAddress;
  468. private String companyName;
  469. private String firstName;
  470. private String lastName;
  471. private String emailAddress;
  472. private String reTypeEmailAddress;
  473. private String street;
  474. private String number;
  475. private String additive;
  476. private String zipCode;
  477. private String city;
  478. private TextField TextFieldUpdateEmailAddress;
  479. private TextField TextFieldCompanyName;
  480. private TextField TextFieldFirstName;
  481. private TextField TextFieldLastName;
  482. private TextField TextFieldEmailAddress;
  483. private TextField TextFieldReTypeEmailAddress;
  484. private TextField TextFieldStreetName;
  485. private TextField TextFieldHouseNumber;
  486. private TextField TextFieldAdditive;
  487. private TextField TextFieldZipCode;
  488. private TextField TextFieldCityName;
  489. private TextField TextFieldSearchEmailAddress;
  490. private TextField TextFieldRemoveEmailAddress;
  491. private ArrayList<String> searchResultArray = null;
  492. private ArrayList<String> updateResultArray = null;
  493. private Scene scene;
  494. private Scene sceneUpdate;
  495. private Pane rootPane;
  496. private Pane paneUpdate;
  497.  
  498. // updateView Model
  499. public Scene getSceneUpdate() {
  500. return sceneUpdate;
  501. }
  502.  
  503. public void setSceneUpdate(Scene sceneUpdate) {
  504. this.sceneUpdate = sceneUpdate;
  505. }
  506.  
  507. public Pane getPaneUpdate() {
  508. return paneUpdate;
  509. }
  510.  
  511. public void setPaneUpdate(Pane paneUpdate) {
  512. this.paneUpdate = paneUpdate;
  513. }
  514.  
  515. // Main view Model
  516. public Pane getRootPane() {
  517. return rootPane;
  518. }
  519.  
  520. public void setRootPane(Pane rootPane) {
  521. this.rootPane = rootPane;
  522. }
  523.  
  524. public Scene getScene() {
  525. return scene;
  526. }
  527.  
  528. public void setScene(Scene scene) {
  529. this.scene = scene;
  530. }
  531.  
  532. public String getUpdateEmailAddress() {
  533. return updateEmailAddress;
  534. }
  535.  
  536. public void setUpdateEmailAddress(String updateEmailAddress) {
  537. this.updateEmailAddress = updateEmailAddress;
  538. }
  539.  
  540. public String getCompanyName() {
  541. return companyName;
  542. }
  543.  
  544. public void setCompanyName(String companyName) {
  545. this.companyName = companyName;
  546. }
  547.  
  548. public String getFirstName() {
  549. return firstName;
  550. }
  551.  
  552. public void setFirstName(String firstName) {
  553. this.firstName = firstName;
  554. }
  555.  
  556. public String getLastName() {
  557. return lastName;
  558. }
  559.  
  560. public void setLastName(String lastName) {
  561. this.lastName = lastName;
  562. }
  563.  
  564. public String getEmailAddress() {
  565. return emailAddress;
  566. }
  567.  
  568. public void setEmailAddress(String emailAddress) {
  569. this.emailAddress = emailAddress;
  570. }
  571.  
  572. public String getReTypeEmailAddress() {
  573. return reTypeEmailAddress;
  574. }
  575.  
  576. public void setReTypeEmailAddress(String reTypeEmailAddress) {
  577. this.reTypeEmailAddress = reTypeEmailAddress;
  578. }
  579.  
  580. public String getStreet() {
  581. return street;
  582. }
  583.  
  584. public void setStreet(String street) {
  585. this.street = street;
  586. }
  587.  
  588. public String getNumber() {
  589. return number;
  590. }
  591.  
  592. public void setNumber(String number) {
  593. this.number = number;
  594. }
  595.  
  596. public String getAdditive() {
  597. return additive;
  598. }
  599.  
  600. public void setAdditive(String additive) {
  601. this.additive = additive;
  602. }
  603.  
  604. public String getZipCode() {
  605. return zipCode;
  606. }
  607.  
  608. public void setZipCode(String zipCode) {
  609. this.zipCode = zipCode;
  610. }
  611.  
  612. public String getCity() {
  613. return city;
  614. }
  615.  
  616. public void setCity(String city) {
  617. this.city = city;
  618. }
  619.  
  620. public TextField getTextFieldUpdateEmailAddress() {
  621. return TextFieldUpdateEmailAddress;
  622. }
  623.  
  624. public void setTextFieldUpdateEmailAddress(TextField updateEmailAddress) {
  625. this.TextFieldUpdateEmailAddress = updateEmailAddress;
  626. }
  627.  
  628. public TextField getTextFieldCompanyName() {
  629. return TextFieldCompanyName;
  630. }
  631.  
  632. public void setTextFieldCompanyName(TextField companyName) {
  633. this.TextFieldCompanyName = companyName;
  634. }
  635.  
  636. public TextField getTextFieldFirstName() {
  637. return TextFieldFirstName;
  638. }
  639.  
  640. public void setTextFieldFirstName(TextField fName) {
  641. this.TextFieldFirstName = fName;
  642. }
  643.  
  644. public TextField getTextFieldLastName() {
  645. return TextFieldLastName;
  646. }
  647.  
  648. public void setTextFieldLastName(TextField lastName) {
  649. this.TextFieldLastName = lastName;
  650. }
  651.  
  652. public TextField getTextFieldEmailAddress() {
  653. return TextFieldEmailAddress;
  654. }
  655.  
  656. public void setTextFieldEmailAddress(TextField emailAddress) {
  657. this.TextFieldEmailAddress = emailAddress;
  658. }
  659.  
  660. public TextField getTextFieldReTypeEmailAddress() {
  661. return TextFieldReTypeEmailAddress;
  662. }
  663.  
  664. public void setTextFieldReTypeEmailAddress(TextField reTypeEmailAddress) {
  665. this.TextFieldReTypeEmailAddress = reTypeEmailAddress;
  666. }
  667.  
  668. public TextField getTextFieldStreet() {
  669. return TextFieldStreetName;
  670. }
  671.  
  672. public void setTextFieldStreet(TextField streetName) {
  673. this.TextFieldStreetName = streetName;
  674. }
  675.  
  676. public TextField getTextFieldHouseNumber() {
  677. return TextFieldHouseNumber;
  678. }
  679.  
  680. public void setTextFieldHouseNumber(TextField houseNumber) {
  681. this.TextFieldHouseNumber = houseNumber;
  682. }
  683.  
  684. public TextField getTextfieldAdditive() {
  685. return TextFieldAdditive;
  686. }
  687.  
  688. public void setTextFieldAdditive(TextField additive) {
  689. this.TextFieldAdditive = additive;
  690. }
  691.  
  692. public TextField getTextFieldZipCode() {
  693. return TextFieldZipCode;
  694. }
  695.  
  696. public void setTexFieldZipCode(TextField zipCode) {
  697. this.TextFieldZipCode = zipCode;
  698. }
  699.  
  700. public TextField getTextFieldCity() {
  701. return TextFieldCityName;
  702. }
  703.  
  704. public void setTextFieldCity(TextField cityName){
  705. this.TextFieldCityName = cityName;
  706. }
  707.  
  708. public TextField getTextFieldSearchEmailAddress(){
  709. return TextFieldSearchEmailAddress;
  710. }
  711.  
  712. public void setTextFieldSearchEmailAddress(TextField searchEmailAddress) {
  713. this.TextFieldSearchEmailAddress = searchEmailAddress;
  714. }
  715.  
  716. public TextField getTextFieldRemoveEmailAddress(){
  717. return TextFieldRemoveEmailAddress;
  718. }
  719.  
  720. public void setTextFieldRemoveEmailAddress(TextField removeEAddress){
  721. this.TextFieldRemoveEmailAddress = removeEAddress;
  722. }
  723.  
  724. public ArrayList<String> getSearchResultArray() {
  725. return searchResultArray;
  726. }
  727.  
  728. public void setSearchResultArray(ArrayList searchResultArray) {
  729. this.searchResultArray = searchResultArray;
  730. }
  731.  
  732. public ArrayList<String> getUpdateResultArray() {
  733. return updateResultArray;
  734. }
  735.  
  736. public void setUpdateResultArray(ArrayList searchResultArray) {
  737. this.updateResultArray = searchResultArray;
  738. }
  739.  
  740. public class AddressManagerMVCJavaFXController {
  741. private final AddressManagerMVCJavaFXModel model;
  742. private final WolffAddressManagerQueriesMVCSERVICES query;
  743. private final AddressManagerMVCJavaFXView view = new AddressManagerMVCJavaFXView();
  744. //private AddressManagerMVCUpdateJavaFXView updateView = new AddressManagerMVCUpdateJavaFXView();
  745.  
  746. public AddressManagerMVCJavaFXController(AddressManagerMVCJavaFXModel model) {
  747. this.query = new WolffAddressManagerQueriesMVCSERVICES();
  748. this.model = model;
  749. }
  750.  
  751. public void buildView1(Stage primaryStage) throws Exception {
  752. view.start(primaryStage);
  753. }
  754.  
  755. public void buildView2() throws Exception {
  756. Stage stage = new Stage();
  757. stage.setTitle("WolffAddressManagerUpdateView");
  758. stage.setScene(new AddressManagerMVCUpdateJavaFXView().createScene());
  759. stage.show();
  760.  
  761. }
  762.  
  763. public void addCredentials(AddressManagerMVCJavaFXView view , AddressManagerMVCJavaFXModel model) throws Exception {
  764. if(model.getEmailAddress().equals(model.getReTypeEmailAddress())) {
  765. if(query.saveAddressToDataBase(view, model) == true) {
  766. showCredentials(view);
  767. }
  768. else {
  769. view.setTextArea(view.getTextArea() + "EMAIL ALREADY EXISTSnn");
  770. }
  771. } else {
  772. JOptionPane.showMessageDialog(null, "Emailaddresses are not the same", "InfoBox: " + "Error", JOptionPane.INFORMATION_MESSAGE);
  773. }
  774. }
  775.  
  776. private void showCredentials(AddressManagerMVCJavaFXView view) throws Exception {
  777. DefaultListModel<String> jList = new DefaultListModel();
  778. JList<String> list = new JList(jList);
  779. model.setSearchResultArray(searchCredentials(model));
  780. for(int i = 0; i < model.getSearchResultArray().size(); i++) {
  781. jList.addElement(model.getSearchResultArray().get(i));
  782. }
  783. list.setModel(jList);
  784.  
  785. int size = list.getModel().getSize();
  786. StringBuilder credentials = new StringBuilder();
  787.  
  788. for(int i = 0; i < size; i++) {
  789. credentials.append(list.getModel().getElementAt(i)).append("n");
  790. }
  791. view.setTextArea(view.getTextArea() + credentials.toString()+ "CREDENTIALS ADDEDnn");
  792. }
  793.  
  794. public void removeCredentials() throws Exception {
  795. query.removeAddress(model.getEmailAddress());
  796. }
  797.  
  798. public ArrayList<String> searchCredentials(AddressManagerMVCJavaFXModel model) throws Exception {
  799. return query.searchAddress(model.getEmailAddress());
  800. }
  801.  
  802. public void showSearchResult(AddressManagerMVCJavaFXView view, AddressManagerMVCJavaFXModel model) {
  803. DefaultListModel<String> jList = new DefaultListModel();
  804. JList<String> list = new JList(jList);
  805.  
  806. try {
  807. model.setSearchResultArray(searchCredentials(model));
  808. } catch (Exception e) {
  809. Logger.getLogger(MainWindowEventHandlerSearchMVCJavaFXView.class.getName()).log(Level.SEVERE, null, e);
  810. }
  811. for(int i = 0; i < model.getSearchResultArray().size(); i++) {
  812. jList.addElement(model.getSearchResultArray().get(i));
  813. }
  814. list.setModel(jList);
  815.  
  816. int size = list.getModel().getSize();
  817. StringBuilder credentials = new StringBuilder();
  818. for(int i = 0; i < size; i++) {
  819. credentials.append(list.getModel().getElementAt(i)).append("n");
  820. }
  821. view.setTextArea(view.getTextArea() + credentials.toString());
  822. }
  823.  
  824. private void showUpdateResult(AddressManagerMVCUpdateJavaFXView view, AddressManagerMVCJavaFXModel model) {
  825. DefaultListModel<String> jList = new DefaultListModel();
  826. JList<String> list = new JList(jList);
  827.  
  828. try {
  829. model.getUpdateResultArray();
  830. } catch (Exception e) {
  831. Logger.getLogger(MainWindowEventHandlerSearchMVCJavaFXView.class.getName()).log(Level.SEVERE, null, e);
  832. }
  833. for(int i = 0; i < model.getUpdateResultArray().size(); i++) {
  834. jList.addElement(model.getUpdateResultArray().get(i));
  835. }
  836. list.setModel(jList);
  837.  
  838. int size = list.getModel().getSize();
  839. StringBuilder credentials = new StringBuilder();
  840. for(int i = 0; i < size; i++) {
  841. credentials.append(list.getModel().getElementAt(i)).append("n");
  842. }
  843. view.setTextArea(credentials.toString());
  844. }
  845.  
  846. public void updateCredentials(AddressManagerMVCUpdateJavaFXView view,AddressManagerMVCJavaFXModel model) throws Exception {
  847. if(query.updateAddress(view, model) == true) {
  848. showUpdateResult(view,model);
  849. }
  850. }
  851. }
  852.  
  853. public class MainWindowEventHandlerAddMVCJavaFZView implements EventHandler {
  854.  
  855. AddressManagerMVCJavaFXModel model = new AddressManagerMVCJavaFXModel();
  856. AddressManagerMVCJavaFXView view;
  857. AddressManagerMVCJavaFXController controller = new AddressManagerMVCJavaFXController(model);
  858.  
  859. public MainWindowEventHandlerAddMVCJavaFZView(AddressManagerMVCJavaFXView view, TextField companyName, TextField firstName, TextField lastName, TextField emailAddress, TextField reTypeEmailAddress, TextField streetName, TextField houseNumber, TextField additive, TextField zipCode, TextField cityName) {
  860. this.view = view;
  861. this.model.setTextFieldCompanyName(companyName);
  862. this.model.setTextFieldFirstName(firstName);
  863. this.model.setTextFieldLastName(lastName);
  864. this.model.setTextFieldEmailAddress(emailAddress);
  865. this.model.setTextFieldReTypeEmailAddress(reTypeEmailAddress);
  866. this.model.setTextFieldStreet(streetName);
  867. this.model.setTextFieldHouseNumber(houseNumber);
  868. this.model.setTextFieldAdditive(additive);
  869. this.model.setTexFieldZipCode(zipCode);
  870. this.model.setTextFieldCity(cityName);
  871. this.model.setTextFieldSearchEmailAddress(companyName);
  872. }
  873.  
  874.  
  875. @Override
  876. public void handle(Event event) {
  877. model.setCompanyName(model.getTextFieldCompanyName().getText());
  878. model.setFirstName(model.getTextFieldFirstName().getText());
  879. model.setLastName(model.getTextFieldLastName().getText());
  880. model.setEmailAddress(model.getTextFieldEmailAddress().getText());
  881. model.setReTypeEmailAddress(model.getTextFieldReTypeEmailAddress().getText());
  882. model.setStreet(model.getTextFieldStreet().getText());
  883. model.setNumber(model.getTextFieldHouseNumber().getText());
  884. model.setAdditive(model.getTextfieldAdditive().getText());
  885. model.setZipCode(model.getTextFieldZipCode().getText());
  886. model.setCity(model.getTextFieldCity().getText());
  887. try {
  888. controller.addCredentials(view, model);
  889. } catch (Exception ex) {
  890. Logger.getLogger(MainWindowEventHandlerAddMVCJavaFZView.class.getName()).log(Level.SEVERE, null, ex);
  891. }
  892. }
  893. }
  894.  
  895. public class AddressManagerQueriesMVCJavaFXServices {
  896. private Connection connect = null;
  897. private final Statement statement = null;
  898. private PreparedStatement preparedStatement = null;
  899. private ResultSet resultSet = null;
  900.  
  901. public boolean updateAddress(AddressManagerMVCUpdateJavaFXView view, AddressManagerMVCJavaFXModel model) throws Exception {
  902. boolean updateAddress = true;
  903. ArrayList<String> updateAddressArray = new ArrayList();
  904. int count = 0;
  905. try {
  906. // This will load the MySQL driver, each DB has its own driver
  907. Class.forName("com.mysql.jdbc.Driver");
  908. // Setup the connection with the DB
  909. connect = DriverManager.getConnection("jdbc:mysql://localhost/dev?" + "user=root&password=somePassword");
  910. preparedStatement = connect.prepareStatement("SELECT * FROM dev.addresses WHERE emailaddress= '" + model.getUpdateEmailAddress() + "'");
  911. resultSet = preparedStatement.executeQuery();
  912.  
  913.  
  914. if(resultSet.next()) {
  915. Object[] options = { "YES", "NO" };
  916. int reply = JOptionPane.showOptionDialog(null, "Are you sure you want to update the crendentials of: " + resultSet.getString("firstname") + " " + resultSet.getString("lastname"), "WARNING.", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[1]);
  917. if(reply == JOptionPane.YES_OPTION) {
  918. preparedStatement = connect.prepareStatement("UPDATE dev.addresses SET companyname = ?, firstname = ?, lastname = ?, emailaddress = ?, retype_emailaddress = ?, street = ?, housenumber = ?, additive = ?, zipcode = ?, city = ? WHERE id = " + resultSet.getString("id"));
  919. if(!model.getCompanyName().equals("")) {
  920. count++;
  921. updateAddressArray.add("Updated Company Name: " + model.getCompanyName());
  922. preparedStatement.setString(1, model.getCompanyName());
  923. } else {
  924. preparedStatement.setString(1, resultSet.getString("companyname"));
  925. }
  926. if(!model.getFirstName().equals("")) {
  927. count++;
  928. updateAddressArray.add("Updated First Name: " + model.getFirstName());
  929. preparedStatement.setString(2, model.getFirstName());
  930. } else {
  931. preparedStatement.setString(2, resultSet.getString("firstname"));
  932. }
  933. if(!model.getLastName().equals("")) {
  934. count++;
  935. updateAddressArray.add("Updated Last Name: " + model.getLastName());
  936. preparedStatement.setString(3, model.getLastName());
  937. } else {
  938. preparedStatement.setString(3, resultSet.getString("lastname"));
  939. }
  940. if(!model.getEmailAddress().equals("")) {
  941. count++;
  942. updateAddressArray.add("Updated Email Address: " + model.getEmailAddress());
  943. preparedStatement.setString(4, model.getEmailAddress());
  944. } else {
  945. preparedStatement.setString(4, resultSet.getString("emailaddress"));
  946. }
  947. if(!model.getReTypeEmailAddress().equals("")) {
  948. count++;
  949. preparedStatement.setString(5, model.getEmailAddress());
  950. } else {
  951. preparedStatement.setString(5, resultSet.getString("retype_emailaddress"));
  952. }
  953. if(!model.getStreet().equals("")) {
  954. count++;
  955. updateAddressArray.add("Updated Street: " + model.getStreet());
  956. preparedStatement.setString(6, model.getStreet());
  957. } else {
  958. preparedStatement.setString(6, resultSet.getString("street"));
  959. }
  960. if(!model.getNumber().equals("")) {
  961. count++;
  962. updateAddressArray.add("Updated Number: " + model.getNumber());
  963. preparedStatement.setString(7, model.getNumber());
  964. } else {
  965. preparedStatement.setString(7, resultSet.getString("housenumber"));
  966. }
  967. if(!model.getAdditive().equals("")) {
  968. count++;
  969. updateAddressArray.add("Updated Additive: " + model.getAdditive());
  970. preparedStatement.setString(8, model.getAdditive());
  971. } else {
  972. preparedStatement.setString(8, resultSet.getString("additive"));
  973. }
  974. if(!model.getZipCode().equals("")) {
  975. count++;
  976. updateAddressArray.add("Updated Zipcode: " + model.getZipCode());
  977. preparedStatement.setString(9, model.getZipCode());
  978. } else {
  979. preparedStatement.setString(9, resultSet.getString("zipcode"));
  980. }
  981. if(!model.getCity().equals("")) {
  982. count++;
  983. updateAddressArray.add("Updated City: " + model.getCity() + "n");
  984. preparedStatement.setString(10, model.getCity());
  985. } else {
  986. preparedStatement.setString(10, resultSet.getString("city"));
  987. }
  988. updateAddressArray.add("nn" + count + " UPDATED FIELDSnn");
  989. model.setUpdateResultArray(updateAddressArray);
  990. preparedStatement.executeUpdate();
  991. JOptionPane.showMessageDialog(null, "Credentails of: " + resultSet.getString("firstname") + " " + resultSet.getString("lastname") + " is updated", "InfoBox: " + "Updated", JOptionPane.INFORMATION_MESSAGE);
  992. }
  993. } else {
  994. updateAddress = false;
  995. JOptionPane.showMessageDialog(null, "Emailaddress: " + model.getUpdateEmailAddress()+ " doesn't exist", "InfoBox: " + "Error", JOptionPane.INFORMATION_MESSAGE);
  996.  
  997. }
  998. } catch (ClassNotFoundException | SQLException | HeadlessException e) {
  999. throw e;
  1000. } finally {
  1001. close();
  1002. }
  1003. return updateAddress;
  1004. }
  1005.  
  1006. public boolean saveAddressToDataBase(AddressManagerMVCJavaFXView view, AddressManagerMVCJavaFXModel model) throws Exception {
  1007. boolean test = false;
  1008. try {
  1009. Class.forName("com.mysql.jdbc.Driver");
  1010. connect = DriverManager.getConnection("jdbc:mysql://localhost/dev?" + "user=root&password=somePassword");
  1011. preparedStatement = connect.prepareStatement("SELECT emailaddress FROM dev.addresses WHERE emailaddress= '" + model.getEmailAddress() + "'");
  1012. resultSet = preparedStatement.executeQuery();
  1013.  
  1014. if(resultSet.next()) {
  1015. JOptionPane.showMessageDialog(null, "Emailaddress: " + model.getEmailAddress()+ " already exist", "InfoBox: " + "Error", JOptionPane.INFORMATION_MESSAGE);
  1016. } else {
  1017. preparedStatement = connect.prepareStatement("INSERT INTO dev.addresses (companyname, firstname, lastname, emailaddress, retype_emailaddress, street, housenumber, additive, zipcode, city) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
  1018. preparedStatement.setString(1, model.getCompanyName());
  1019. preparedStatement.setString(2, model.getFirstName());
  1020. preparedStatement.setString(3, model.getLastName());
  1021. preparedStatement.setString(4, model.getEmailAddress());
  1022. preparedStatement.setString(5, model.getReTypeEmailAddress());
  1023. preparedStatement.setString(6, model.getStreet());
  1024. preparedStatement.setString(7, model.getNumber());
  1025. preparedStatement.setString(8, model.getAdditive());
  1026. preparedStatement.setString(9, model.getZipCode());
  1027. preparedStatement.setString(10, model.getCity());
  1028. preparedStatement.executeUpdate();
  1029. test = true;
  1030. }
  1031. } catch (ClassNotFoundException | SQLException | HeadlessException e) {
  1032. throw e;
  1033. } finally {
  1034. close();
  1035. }
  1036. return test;
  1037. }
  1038.  
  1039. public ArrayList<String> searchAddress(String emailAddress) throws Exception {
  1040. ArrayList<String> queryResultSet = new ArrayList();
  1041. try {
  1042. Class.forName("com.mysql.jdbc.Driver");
  1043. connect = DriverManager.getConnection("jdbc:mysql://localhost/dev?" + "user=root&password=somePassword");
  1044. preparedStatement = connect.prepareStatement("SELECT * FROM dev.addresses WHERE emailaddress= '" + emailAddress + "'");
  1045. resultSet = preparedStatement.executeQuery();
  1046. if(resultSet.next()) {
  1047. queryResultSet.add("CREDENTIALS OF: " + resultSet.getString("firstname").toUpperCase() + " " + resultSet.getString("lastname").toUpperCase() + "n");
  1048. queryResultSet.add("Company Name: " + resultSet.getString("companyname"));
  1049. queryResultSet.add("First Name: " + resultSet.getString("firstname"));
  1050. queryResultSet.add("Last Name: " + resultSet.getString("lastname"));
  1051. queryResultSet.add("Email: " + resultSet.getString("emailaddress"));
  1052. queryResultSet.add("Street Name: " + resultSet.getString("street"));
  1053. queryResultSet.add("House Number: " + resultSet.getString("housenumber"));
  1054. queryResultSet.add("Additive: " + resultSet.getString("additive"));
  1055. queryResultSet.add("Zipcode: " + resultSet.getString("zipcode"));
  1056. queryResultSet.add("City: " + resultSet.getString("city") + "n");
  1057. } else {
  1058. JOptionPane.showMessageDialog(null, emailAddress + " doesn't exist", "INVALID INPUT.", JOptionPane.INFORMATION_MESSAGE);
  1059. }
  1060. } catch (ClassNotFoundException | SQLException | HeadlessException e) {
  1061. throw e;
  1062. } finally {
  1063. close();
  1064. }
  1065. return queryResultSet;
  1066. }
  1067.  
  1068. public void removeAddress(String emailAddress) throws Exception {
  1069. try {
  1070. Class.forName("com.mysql.jdbc.Driver");
  1071. connect = DriverManager.getConnection("jdbc:mysql://localhost/dev?" + "user=root&password=somePassword");
  1072. preparedStatement = connect.prepareStatement("SELECT * FROM dev.addresses WHERE emailaddress= '" + emailAddress + "'");
  1073. resultSet = preparedStatement.executeQuery();
  1074.  
  1075. if(resultSet.next()) {
  1076. Object[] options = { "YES", "NO" };
  1077. int reply = JOptionPane.showOptionDialog(null, "Are you sure you want to delete the crendentials of: " + resultSet.getString("firstname") + " " + resultSet.getString("lastname"), "WARNING.", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[1]);
  1078. if(reply == JOptionPane.YES_OPTION) {
  1079. preparedStatement = connect.prepareStatement("DELETE FROM dev.addresses WHERE emailaddress = '" + emailAddress + "'");
  1080. preparedStatement.executeUpdate();
  1081. }
  1082. } else {
  1083. JOptionPane.showMessageDialog(null,"Emailaddress: " + """ + emailAddress + """ + " Doesn't exist", "INVALID INPUT.", JOptionPane.INFORMATION_MESSAGE);
  1084. }
  1085. } catch (ClassNotFoundException | SQLException | HeadlessException e) {
  1086. throw e;
  1087. } finally {
  1088. close();
  1089. }
  1090. }
  1091.  
  1092. // Close the resultSet
  1093. private void close() {
  1094. try {
  1095. if (resultSet != null) {
  1096. resultSet.close();
  1097. }
  1098.  
  1099. if (statement != null) {
  1100. statement.close();
  1101. }
  1102.  
  1103. if (connect != null) {
  1104. connect.close();
  1105. }
  1106. } catch (Exception e) {
  1107.  
  1108. }
  1109. }
  1110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement