package PassGen; // a password generator import java.util.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; class RandNum { Random rand = new Random(); private int randNum; public int get_randNum() { boolean invalid_randNum = true; for(;invalid_randNum;) { randNum = rand.nextInt(122); if(randNum > 64 & randNum < 122) { if(randNum != 91) if(randNum != 92) if(randNum != 93) if(randNum != 94) if(randNum != 95) if(randNum != 96) invalid_randNum = false; } } return randNum; } } class GenPass { // random number gen RandNum rn = new RandNum(); PassFileWrite fw = new PassFileWrite(); // password generation method public String gen_password() { String pass = ""; char chr = 0; // pass gen for(int i = 0 ; i < 10 ; i++) { int random_number = rn.get_randNum(); chr = (char) random_number; pass += "" + chr; } System.out.println(); fw.write_pass_file(pass); return pass; } } class GenUser { // random number gen RandNum rn = new RandNum(); UserFileWrite fw = new UserFileWrite(); // password generation method public String gen_username() { String user = ""; char chr = 0; // pass gen for(int i = 0 ; i < 5 ; i++) { int random_number = rn.get_randNum(); chr = (char) random_number; user += "" + chr; } System.out.println(); fw.write_user_file(user); return "user_" + user; } } class PassGen { GenPass gp = new GenPass(); GenUser gu = new GenUser(); JLabel jlab; JLabel userlab; JLabel passlab; String password = ""; PassGen() { // Create a JFrame container JFrame jfrm = new JFrame("Password Generator"); // Specify FlowLayout for the layout manager jfrm.setLayout(new FlowLayout()); // give the frame an initial size jfrm.setSize(250, 140); //terminate the program when a user closes the window jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // make two buttons final JTextField userfield = new JTextField(10); final JTextField passfield = new JTextField(10); JButton gen_user = new JButton("Generate Details"); passfield.setEditable(false); userfield.setEditable(false); // Add action listener for UserName gen_user.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { userfield.setText(gu.gen_username()); passfield.setText(gp.gen_password()); } }); // create a text based label for the username userlab = new JLabel("Username: "); // create a text based for the password passlab = new JLabel("Password: "); // Add the buttons to the content pane. jfrm.add(userlab); jfrm.add(userfield); jfrm.add(passlab); jfrm.add(passfield); jfrm.add(gen_user); // create a text based label jlab = new JLabel("Please press generate details"); // add that label to the content pane jfrm.add(jlab); // Display the frame jfrm.setVisible(true); } public static void main(String args[]) { // Create the frame on the event dispatching thread. SwingUtilities.invokeLater(new Runnable() { public void run() { new PassGen(); } }); } }