marți, 5 iunie 2012

adress adapter

public interface AddressValidator {

    public boolean isValidAddress(String inp_address,String inp_zip,String inp_state);
   
}
.....................

public class CAAddressAdapter extends CAAdress implements AddressValidator  {

    public boolean isValidAddress(String inp_address, String inp_zip,
            String inp_state) {
   
        return isValidCanadianAddr(inp_address,inp_zip,inp_state);
       
    }

}
.........................

public class CAAdress {

    public boolean isValidCanadianAddr(String inp_address, String inp_zip,
            String inp_state) {
       
    if(inp_address.trim().length()<15)
         return false;
    if(inp_zip.trim().length()!=6)
          return false;
    if(inp_state.trim().length()<6)
         return false;
       
        return true;
    }

}
............................
import javax.swing.*;

public class Console {

    public static void run(JApplet applet,int lung,int inalt)
    {
        JFrame frame=new JFrame("Validare date client");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(lung,inalt);
        frame.getContentPane().add(applet);
        applet.init();
        applet.start();
        frame.setLocationRelativeTo(null);
        frame.setResizable(false);
        frame.setVisible(true);
       
       
    }
   
   
}
..............................

public class Customer {

    private static final String US="US";
    private static final String CANADA="Canada";
   
    private String address;
    private String name;
    private String zip, state,type;
   
    public boolean isValidAddress(String inp_address,String inp_zip,String inp_state)
    {
        AddressValidator valid=getValidator(type);
       
        return valid.isValidAddress(inp_address,inp_zip,inp_state);
    }
   
   
    private AddressValidator getValidator(String custType)
    {
        AddressValidator validator=null;
        if(custType.equals("US"))
              validator=new USAddress();
        else
             validator=new CAAddressAdapter();
       
       
        return validator;
    }
   
    public Customer(String inp_name,String inp_address,
            String inp_zip,String inp_state,String inp_type)
    {
        this.name=inp_name;
        this.address=inp_address;
        this.zip=inp_zip;
        this.state=inp_state;
        this.type=inp_type;
    }
   
}
..................................
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Test extends JApplet{

    JLabel adresa,zip,state;
    JTextField adr,zipe,stat;
    JOptionPane msg;
    Box box;
   
   
    JPanel panel,panel1,panel2,panel3;
    JButton verifica;
   
    public void init()
    {
       
        panel=new JPanel();
        panel1=new JPanel(new FlowLayout());
        panel2=new JPanel(new FlowLayout());
        panel3=new JPanel(new FlowLayout());
       
       
        box=box.createVerticalBox();
       
        adr=new JTextField(25);
        adr.setBackground(Color.WHITE);
        adr.setHorizontalAlignment(JTextField.LEFT);
       
       
       
        zipe=new JTextField(25);
        zipe.setBackground(Color.WHITE);
        zipe.setHorizontalAlignment(JTextField.LEFT);
       
       
        stat=new JTextField(25);
        stat.setBackground(Color.WHITE);
        stat.setHorizontalAlignment(JTextField.LEFT);
        
       
        adresa=new JLabel("Address");
        zip=new JLabel("Zip Code");
        state=new JLabel("   State    ");
       
       
        panel1.add(adresa);
        panel1.add(adr);
       
        panel2.add(zip);
        panel2.add(zipe);
       
        panel3.add(state);
        panel3.add(stat);
       
        box.add(panel1);
        box.add(panel2);
        box.add(panel3);
       
        getContentPane().add(box,BorderLayout.NORTH);
       
       
        Ascultator asc=new Ascultator();
        verifica=new JButton("Verifica");
        verifica.addActionListener(asc);
       
        panel.add(verifica);
        getContentPane().add(panel,BorderLayout.SOUTH);
       
       
    }
    public class Ascultator implements ActionListener {

        public void actionPerformed(ActionEvent e) {
       
            String s=e.getActionCommand();
            if(s.equals("Verifica"))
            {
                String a=adr.getText();
                String z=zipe.getText();
                String st=stat.getText();
                Customer cus=new Customer("Boris",a,z,st,"US");
                System.out.println("a= "+a);
                System.out.println("z= "+z);
                System.out.println("s= "+st);
               
                boolean ok=cus.isValidAddress(a,z,st);
                System.out.println("ok= "+ok);
                if(ok==true)
                JOptionPane.showMessageDialog(null,
                        "Datele introduse sunt valide", "Rezultat",
                        JOptionPane.INFORMATION_MESSAGE);
                else
                    JOptionPane.showMessageDialog(null,
                            "Datele introduse sunt invalide", "Rezultat",
                            JOptionPane.ERROR_MESSAGE);
                   
               
            }

        }

    }
   
    public static void main(String[] args) {
    Console.run(new Test(),600,400);

    }

}
...................................

public class USAddress implements AddressValidator {

    public boolean isValidAddress(String inp_address, String inp_zip,
            String inp_state) {

        if(inp_address.trim().length()<10)
        {
           
        System.out.println("Address false"+inp_address);
            return false;
        }
        if(inp_zip.trim().length()<5)
        {
            System.out.println("zip false"+inp_zip);
            return false;
        }
       
        if(inp_zip.length()>10)
           
            {
            System.out.println("zip false"+inp_zip);
            return false;
           
            }
       
        if(inp_state.trim().length()!=2)
            {
            System.out.println("State false"+inp_state);
            return false;
            }
   
       
        return true;
    }

}

Niciun comentariu:

Trimiteți un comentariu