Question: I have a question. I have a Gui Application and I need to put a timestamp feature to audit when someone accesses the application (clock

I have a question. I have a Gui Application and I need to put a timestamp feature to audit when someone accesses the application (clock synchronizing in milliseconds) and feature to audit records in the applicstion(records the amount of time sprent and what was accessed).

With this Javafx code

import javafx.application.Application; import static javafx.application.Application.launch; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.control.PasswordField; import javafx.scene.control.TextField; import javafx.scene.layout.GridPane; import javafx.scene.paint.Color; import javafx.scene.text.Text; import javafx.stage.Stage;

public void start(Stage primaryStage) { primaryStage.setTitle("SDEV425 Login"); // Grid Pane divides your window into grids GridPane grid = new GridPane(); // Align to Center // Note Position is geometric object for alignment grid.setAlignment(Pos.CENTER); // Set gap between the components // Larger numbers mean bigger spaces grid.setHgap(10); grid.setVgap(10); // Create some text to place in the scene Text scenetitle = new Text("Welcome. Login to continue."); // Add text to grid 0,0 span 2 columns, 1 row grid.add(scenetitle, 0, 0, 2, 1); // Create Label Label userName = new Label("User Name:"); // Add label to grid 0,1 grid.add(userName, 0, 1); // Create Textfield TextField userTextField = new TextField(); // Add textfield to grid 1,1 grid.add(userTextField, 1, 1); // Create Label Label pw = new Label("Password:"); // Add label to grid 0,2 grid.add(pw, 0, 2); // Create Passwordfield PasswordField pwBox = new PasswordField(); // Add Password field to grid 1,2 grid.add(pwBox, 1, 2); // Create Login Button Button btn = new Button("Login"); // Add button to grid 1,4 grid.add(btn, 1, 4); final Text actiontarget = new Text(); grid.add(actiontarget, 1, 6); // Set the Action when button is clicked btn.setOnAction(new EventHandler() { @Override public void handle(ActionEvent e) { // Authenticate the user boolean isValid = authenticate(userTextField.getText(), pwBox.getText()); // If valid clear the grid and Welcome the user if (isValid) { grid.setVisible(false); GridPane grid2 = new GridPane(); // Align to Center // Note Position is geometric object for alignment grid2.setAlignment(Pos.CENTER); // Set gap between the components // Larger numbers mean bigger spaces grid2.setHgap(10); grid2.setVgap(10); Text scenetitle = new Text("Welcome " + userTextField.getText() + "!"); // Add text to grid 0,0 span 2 columns, 1 row grid2.add(scenetitle, 0, 0, 2, 1); Scene scene = new Scene(grid2, 500, 400); primaryStage.setScene(scene); primaryStage.show(); // If Invalid Ask user to try again } else { final Text actiontarget = new Text(); grid.add(actiontarget, 1, 6); actiontarget.setFill(Color.FIREBRICK); actiontarget.setText("Please try again."); } } }); // Set the size of Scene Scene scene = new Scene(grid, 500, 400); primaryStage.setScene(scene); primaryStage.show(); } /** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } /** * @param user the username entered * @param pword the password entered * @return isValid true for authenticated */ public boolean authenticate(String user, String pword) { boolean isValid = false; if (user.equalsIgnoreCase("sdevadmin") && pword.equals("425!pass")) { isValid = true; } return isValid; } }

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!