Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package shawnim;
- import java.awt.*;
- import java.io.*;
- import java.awt.event.*;
- import java.util.Scanner;
- import javax.swing.*;
- public class authSys extends JFrame {
- //Variables
- private String username;
- private String password;
- private ObjectOutputStream output;
- private ObjectInputStream input;
- private JTextField textField;
- private JTextArea textArea;
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- //constructor
- public authSys(){
- super("ShawnIM(SEVER)");
- textField = new JTextField();
- textField.setEditable(true);
- add(textField, BorderLayout.SOUTH);
- textArea = new JTextArea();
- textArea.setEditable(false);
- add(new JScrollPane(textArea));
- setSize(400,300);
- setVisible(true);
- textField.addActionListener(
- new ActionListener(){
- public void actionPerformed(ActionEvent event){
- textArea.setText("");
- textArea.append(textField.getText());
- }
- }
- );
- }
- //Welcome messages and selection for logging in and creating new user
- public void userMain(){
- showMessage("Welcome to ShawnIM!\n");
- showMessage("Please enter LOGIN to login in to an existing user.\n");
- showMessage("Please enter NEWUSER to create a new user.\n");
- showMessage("usernames are CASE SENSITIVE.\n");
- setUsername(textField.getText());
- if(username.equals("login") || username.equals("LOGIN")){
- checkUsername();
- }else if(username.equals("NEWUSER") || username.equals("newuser")){
- createUserFile();
- }else{
- showMessage("\nERROR:UNRECONIZED COMMAND!\n");
- //userMain();
- }
- }
- //check username entered if user selects loggin and matches file to user
- private void checkUsername(){
- Scanner s = new Scanner(System.in);
- showMessage("Enter Your Username: ");
- username = s.next();
- File folder = new File("userbase");
- File[] listOfFiles = folder.listFiles();
- for(int i = 0; i < listOfFiles.length; i++){
- String filename = listOfFiles[i].getName();
- if(filename.startsWith(username+".txt")){
- loginPassword();
- }else{
- showMessage("User does not exist!");
- showMessage("Enter RETURN to try again.");
- showMessage("Enter NEWUSER to create a new user.");
- username = s.next();
- switch(username){
- case "RETURN": checkUsername();
- break;
- case "return": checkUsername();
- break;
- case "NEWUSER": createUserFile();
- break;
- case "newuser": createUserFile();
- break;
- default:
- showMessage("ERROR:UNRECONIZED COMMAND!");
- userMain();
- }
- }
- }
- }
- //password login method
- private void loginPassword(){//might want to extend functionality here(ie retun a value or smtng)
- try{
- Scanner s = new Scanner(System.in);
- File user = new File(username+".txt");
- FileReader fr = new FileReader(user);
- BufferedReader br = new BufferedReader(fr);
- password=br.readLine();
- //can add additonal lines to read and store 'intrests' and save them in a global var
- fr.close();
- br.close();
- showMessage("Enter Password: ");
- String inpUser=s.nextLine();
- if(inpUser.equals(password)){
- showMessage("Logged in...");
- showMessage("Welcome!");
- System.exit(0);//program continues here............
- }else{
- showMessage("Password is Incorrect");
- loginPassword();
- }
- }catch(IOException e){
- showMessage("ERROR - LOGINPASSOWRD");
- System.exit(0);
- }
- }
- //creates user profile and check if username has ben used
- private void createUserFile(){
- try{
- Scanner s = new Scanner(System.in);
- showMessage("Enter your desired username: ");
- String x = s.next();
- File file = new File("userbase/"+x+".txt");
- if(file.createNewFile()){
- showMessage("User sucsessfully created!");
- createProfile();
- }else{
- showMessage("User alredy Exists! Try another username.");
- createUserFile();
- }
- }catch(IOException e){
- showMessage("ERROR - CREATEUSERFILE");
- }
- }
- //password and misc part of user profile
- private void createProfile(){
- try{
- File file = new File(username+".txt");
- PrintWriter output = new PrintWriter(file);
- Scanner s = new Scanner(System.in);
- showMessage("Enter desired password: ");
- password = s.next();
- //enter intrests here------------------
- output.print(password);
- output.close();
- }catch(IOException e){
- showMessage("ERROR - CREATEUSERPROFILE");
- }
- }
- private void showMessage(final String text){
- SwingUtilities.invokeLater(
- new Runnable(){
- public void run(){
- textArea.append(text);
- }
- }
- );
- }
- private void getMessage(){
- }
- private void sendText(String text) throws IOException{
- try{
- text = (String) input.readObject();
- showMessage("\n" + text);
- }catch(ClassNotFoundException classNotFoundException){
- showMessage("\n(Error - unredable string type...)");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement