All pastes #823636 Raw Edit

rangen

public text v1 · immutable
·published 2007-12-19 14:38 UTC
rendered paste body
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();
				}
			});
		}
	}