import java.io.*; import java.awt.*; import java.awt.event.*; import javax.mail.*; import javax.mail.internet.*; import java.net.*; import java.util.*; public class meiliklient3 extends Frame implements ActionListener{ TextArea tekst=new TextArea(); Button yhendus=new Button("Ühendus"); Button kirjad=new Button("Kirjad"); Button milline=new Button("Milline"); Button saada=new Button("Saada"); Button tyhjenda2=new Button("Tühjenda"); TextField mitmes=new TextField(""); TextField subjekt=new TextField(""); TextField kellele=new TextField(""); Store hoidla; Folder kaust; Message kiri; Message kirjad_m[]; int mitukirja; String[] m_kirjad; String aadress1; String user1; //nurgast kinnipanek Frame kysim=new Frame(); Button jah=new Button("Jah"); Button ei=new Button("Ei"); //yhendus Frame kysim2=new Frame(); TextField aadress=new TextField(""); TextField user=new TextField(""); TextField pass=new TextField(""); Button kinnita=new Button("Kinnita"); Button tyhjenda=new Button("Tühjenda"); Panel paneel2=new Panel(new GridLayout(2,1)); Panel paneel3=new Panel(new GridLayout(1,2)); Panel paneel4=new Panel(new GridLayout(2,2)); public meiliklient3(){ try{ hoidla=Session.getDefaultInstance(System.getProperties()).getStore("pop3"); }catch(Exception viga){ viga.printStackTrace(); } setTitle("Meiliklient"); setSize(500,400); Panel paneel=new Panel(new BorderLayout()); Panel paneel5=new Panel(new FlowLayout()); Panel paneel7=new Panel(new GridLayout(2,1)); Panel paneel8=new Panel(new BorderLayout()); paneel.add(paneel5, BorderLayout.NORTH); paneel.add(paneel8); paneel8.add(paneel7, BorderLayout.NORTH); paneel8.add(tekst); Panel paneel6=new Panel(new FlowLayout()); paneel5.setLayout(new BorderLayout()); paneel5.add(paneel6, BorderLayout.WEST); paneel6.add(yhendus); paneel6.add(kirjad); paneel6.add(mitmes); paneel6.add(milline); paneel6.add(saada); paneel6.add(tyhjenda2); paneel7.add(kellele); paneel7.add(subjekt); yhendus.addActionListener(this); kirjad.addActionListener(this); milline.addActionListener(this); saada.addActionListener(this); tyhjenda2.addActionListener(this); add(paneel); setResizable(false); addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ kysim.setVisible(true); } } ); setVisible(true); //nurgast kinnipanek kysim.setSize(300,70); Panel savep=new Panel(new GridLayout(2,1)); kysim.setTitle("Kas tahad programmist väljuda?"); jah.addActionListener(this); ei.addActionListener(this); savep.add(jah); savep.add(ei); kysim.add(savep); kysim.setResizable(false); kysim.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ kysim.setVisible(false); } } ); //yhendus kysim2.setSize(300,70); kysim2.setTitle("Ühenduse loomine serveriga"); kinnita.addActionListener(this); tyhjenda.addActionListener(this); kysim2.add(paneel3, BorderLayout.NORTH); paneel2.add(aadress); paneel3.add(paneel2, BorderLayout.WEST); paneel3.add(paneel4); paneel4.add(user); paneel4.add(tyhjenda); pass.setEchoChar('*'); paneel4.add(pass); paneel4.add(kinnita); kysim2.setResizable(false); kysim2.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ kysim2.setVisible(false); } } ); } public void actionPerformed(ActionEvent e){ try{ //nurgast kinnipanek if(e.getSource()==jah){ System.exit(0); } if(e.getSource()==ei){ kysim.setVisible(false); } //yhendus if(e.getSource()==yhendus){ kysim2.setVisible(true); } if(e.getSource()==kinnita){ aadress1=new String(aadress.getText()); user1=new String(user.getText()); String pass1=new String(pass.getText()); hoidla.connect(aadress1, 110, user1, pass1); kysim2.setVisible(false); } if(e.getSource()==tyhjenda){ aadress.setText(""); user.setText(""); pass.setText(""); } //kirjad if(e.getSource()==kirjad){ int nr2=1; kaust=hoidla.getFolder("INBOX"); kaust.open(Folder.READ_WRITE); mitukirja=kaust.getMessageCount(); int nr=0; tekst.setText("Sul on "+mitukirja+" kirja.\n \n"); kirjad_m=kaust.getMessages(); while(nr < mitukirja){ kiri=kirjad_m [nr]; tekst.append(nr2+". "+kiri.getSubject()+"\n"); nr2++; nr++; } } //milline if(e.getSource()==milline){ int nr=Integer.parseInt(mitmes.getText()); kirjad_m=kaust.getMessages(); kiri=kirjad_m [nr-1]; String kirjad=(String)kiri.getContent(); tekst.setText(""); tekst.append(kirjad); } //saada if(e.getSource()==saada){ Properties p1=System.getProperties(); p1.put("mail.smtp.host", "mail.tpu.ee"); Session s1=Session.getDefaultInstance(p1, null); Message teade=new MimeMessage(s1); teade.setFrom(new InternetAddress(user1+"@"+aadress1)); //saatja teade.setRecipient(Message.RecipientType.TO, new InternetAddress(kellele.getText())); //saaja teade.setSubject(subjekt.getText()); teade.setText(tekst.getText()); Transport.send(teade); } //tyhjenda2 if(e.getSource()==tyhjenda2){ kellele.setText(""); subjekt.setText(""); tekst.setText(""); } }catch(Exception viga){ viga.printStackTrace(); } } public static void main(String argumendid[]){ new meiliklient3(); } }