# HG changeset patch # User nikita@mapiproxy # Date 1251164578 -7200 # Node ID b11d01c264a33b2d4ef6ea0511d3a3b436106c4d # Parent 62b942273625306a344a6b9b30cfa3715ce82f34 debut de l'audit de mon code diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/JingleService.java --- a/src/com/beem/project/beem/jingle/JingleService.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/JingleService.java Tue Aug 25 03:42:58 2009 +0200 @@ -1,5 +1,5 @@ /** - * + * */ package com.beem.project.beem.jingle; @@ -19,30 +19,42 @@ import org.jivesoftware.smackx.jingle.nat.TransportCandidate; /** + * Beem Jingle Service, manage jingle call. * @author nikita - * */ public class JingleService { - private JingleManager mJingleManager; + private JingleManager mJingleManager; private List mMediaManagers; - private JingleSession mIn; - private JingleSession mOut; + private JingleSession mIn; + private JingleSession mOut; - public JingleService(XMPPConnection xmppConnection) { + /** + * JingleService constructor. + * @param xmppConnection a valid XMPPConnection + */ + public JingleService(final XMPPConnection xmppConnection) { BasicTransportManager bt = new BasicTransportManager(); mMediaManagers = new ArrayList(); mMediaManagers.add(new RTPMediaManager(bt)); } + /** + * finish to construct the instance. + * @param conn the xmppConnection used with constructor + */ public void initWhenConntected(XMPPConnection conn) { mJingleManager = new JingleManager(conn, mMediaManagers); mJingleManager.addJingleSessionRequestListener(new BeemJingleSessionRequestListener()); } - public void call(final String destinataire) { + /** + * begin a jingle call. + * @param receiver the call receiver + */ + public void call(final String receiver) { try { - mOut = mJingleManager.createOutgoingJingleSession(destinataire); + mOut = mJingleManager.createOutgoingJingleSession(receiver); // TODO configure out avec addMediaSession et addNegociator mOut.addListener(new BeemJingleCallerSessionListener()); mOut.startOutgoing(); @@ -53,63 +65,75 @@ } /* - private void receiveData(String ip, int port) throws IOException { - Socket s = null; - try { - s = new Socket(ip, port); - System.out.println("Waiting data"); - InputStream in = s.getInputStream(); - int a; - while ((a = in.read()) != -1) { - System.out.println("Received " + a); - } - System.out.println("End receiving data"); - } finally { - if (s != null) - s.close(); + * private void receiveData(String ip, int port) throws IOException { Socket s = null; try { s = new Socket(ip, + * port); System.out.println("Waiting data"); InputStream in = s.getInputStream(); int a; while ((a = in.read()) != + * -1) { System.out.println("Received " + a); } System.out.println("End receiving data"); } finally { if (s != null) + * s.close(); } } + */ + /** + * Listen on receiver session events. + * @author nikita + */ + private class BeemJingleReceiverSessionListener implements JingleSessionListener { + + /** + * constructor. + */ + public BeemJingleReceiverSessionListener() { + super(); + // TODO Auto-generated constructor stub } - }*/ - - private class BeemJingleReceiverSessionListener implements JingleSessionListener { - @Override - public void sessionClosed(String reason, JingleSession jingleSession) { - System.out.println("Session " + jingleSession.getResponder() + "closedd because " + reason); - } + + @Override + public void sessionClosed(String reason, JingleSession jingleSession) { + System.out.println("Session " + jingleSession.getResponder() + "closedd because " + reason); + } - @Override - public void sessionClosedOnError(XMPPException e, JingleSession jingleSession) { - // TODO Auto-generated method stub - System.out.println("Session " + jingleSession.getResponder() + " closed"); - - } + @Override + public void sessionClosedOnError(XMPPException e, JingleSession jingleSession) { + // TODO Auto-generated method stub + System.out.println("Session " + jingleSession.getResponder() + " closed"); - @Override - public void sessionDeclined(String reason, JingleSession jingleSession) { - // TODO Auto-generated method stub - System.out - .println("Session " + jingleSession.getResponder() + "declined because " + reason); - } + } + + @Override + public void sessionDeclined(String reason, JingleSession jingleSession) { + // TODO Auto-generated method stub + System.out.println("Session " + jingleSession.getResponder() + "declined because " + reason); + } - @Override - public void sessionEstablished(PayloadType pt, TransportCandidate remoteCandidate, - TransportCandidate localCandidate, JingleSession jingleSession) { - System.out.println("Session established"); - System.out.println("Je recois sur " + remoteCandidate.getIp() + ":" - + remoteCandidate.getPort()); - RTPReceiver rtpReceiver = new MicroRTPReceiver(remoteCandidate.getPort()); - } + @Override + public void sessionEstablished(PayloadType pt, TransportCandidate remoteCandidate, + TransportCandidate localCandidate, JingleSession jingleSession) { + System.out.println("Session established"); + System.out.println("Je recois sur " + remoteCandidate.getIp() + ":" + remoteCandidate.getPort()); + RTPReceiver rtpReceiver = new MicroRTPReceiver(remoteCandidate.getPort()); + } - @Override - public void sessionMediaReceived(JingleSession jingleSession, String participant) { - System.out.println("Session Media received from " + participant); - } + @Override + public void sessionMediaReceived(JingleSession jingleSession, String participant) { + System.out.println("Session Media received from " + participant); + } - @Override - public void sessionRedirected(String redirection, JingleSession jingleSession) { - } + @Override + public void sessionRedirected(String redirection, JingleSession jingleSession) { + } } + /** + * Listen on caller session events. + * @author nikita + */ private class BeemJingleCallerSessionListener implements JingleSessionListener { + + /** + * constructor. + */ + public BeemJingleCallerSessionListener() { + super(); + // TODO Auto-generated constructor stub + } + @Override public void sessionClosed(final String reason, final JingleSession jingleSession) { System.out.println("Session " + jingleSession.getResponder() + "closed because " + reason); @@ -135,7 +159,6 @@ int port = localCandidate.getPort(); System.out.println("Session established waiting connection on " + ip + ":" + port); - RTPTransmitter transm = new MicroRTPTransmitter(ip, port); transm.run(); @@ -162,7 +185,19 @@ } } + /** + * Listen for a Jingle session request. + * @author nikita + */ private class BeemJingleSessionRequestListener implements JingleSessionRequestListener { + + /** + * Constructor. + */ + public BeemJingleSessionRequestListener() { + super(); + } + @Override public void sessionRequested(JingleSessionRequest request) { System.out.println("Jingle Session request from " + request.getFrom()); diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/MicroRTPReceiver.java --- a/src/com/beem/project/beem/jingle/MicroRTPReceiver.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/MicroRTPReceiver.java Tue Aug 25 03:42:58 2009 +0200 @@ -1,5 +1,5 @@ /** - * + * */ package com.beem.project.beem.jingle; @@ -9,8 +9,8 @@ import android.util.Log; /** + * * @author nikita - * */ public class MicroRTPReceiver extends RTPReceiver { @@ -20,7 +20,8 @@ super(rtpPort); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see org.jlibrtp.jlibrtp.RTPAppIntf#receiveData(org.jlibrtp.jlibrtp.DataFrame, org.jlibrtp.jlibrtp.Participant) */ @Override diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/MicroRTPTransmitter.java --- a/src/com/beem/project/beem/jingle/MicroRTPTransmitter.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/MicroRTPTransmitter.java Tue Aug 25 03:42:58 2009 +0200 @@ -9,7 +9,6 @@ /** * @author nikita - * */ public class MicroRTPTransmitter extends RTPTransmitter { @@ -19,21 +18,23 @@ @Override void start() { - AudioRecord audRec = new AudioRecord(MediaRecorder.AudioSource.DEFAULT, 8000, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_8BIT, AudioRecord.getMinBufferSize(8000, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_8BIT) ); - byte [] audioData = new byte[1024]; + AudioRecord audRec = new AudioRecord(MediaRecorder.AudioSource.DEFAULT, 8000, + AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_8BIT, AudioRecord.getMinBufferSize(8000, + AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_8BIT)); + byte[] audioData = new byte[1024]; int byteReaded = 0; while (!mKillme) { byteReaded = audRec.read(audioData, byteReaded, 1024); System.out.println("readed " + byteReaded); mRtpSession.sendData(audioData); } - + try { Thread.sleep(200); } catch (Exception e) { } this.mRtpSession.endSession(); - + } } diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/RTPMediaManager.java --- a/src/com/beem/project/beem/jingle/RTPMediaManager.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/RTPMediaManager.java Tue Aug 25 03:42:58 2009 +0200 @@ -11,13 +11,17 @@ import org.jivesoftware.smackx.jingle.nat.JingleTransportManager; import org.jivesoftware.smackx.jingle.nat.TransportCandidate; +/** + * RTPMediaManager, gere les payloads et renvoie une session RTP + * @author nikita + */ public class RTPMediaManager extends JingleMediaManager { - private static final SmackLogger LOGGER = SmackLogger.getLogger(RTPMediaManager.class); + private static final SmackLogger LOGGER = SmackLogger.getLogger(RTPMediaManager.class); - public static final String MEDIA_NAME = "RTP_BIDON"; + public static final String MEDIA_NAME = "RTP_BIDON"; - private List mPayloads; + private List mPayloads; public RTPMediaManager(JingleTransportManager transportManager) { super(transportManager); @@ -28,7 +32,7 @@ @Override public JingleMediaSession createMediaSession(PayloadType payloadType, TransportCandidate remote, - TransportCandidate local, JingleSession jingleSession) { + TransportCandidate local, JingleSession jingleSession) { // TODO Auto-generated method stub return new RTPMediaSession(payloadType, remote, local, null, jingleSession); } diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/RTPMediaSession.java --- a/src/com/beem/project/beem/jingle/RTPMediaSession.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/RTPMediaSession.java Tue Aug 25 03:42:58 2009 +0200 @@ -13,8 +13,8 @@ */ public class RTPMediaSession extends JingleMediaSession { - private RTPTransmitter mTransmitter; - private RTPReceiver mReceiver; + private RTPTransmitter mTransmitter; + private RTPReceiver mReceiver; /** * @param payloadType diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/RTPReceiver.java --- a/src/com/beem/project/beem/jingle/RTPReceiver.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/RTPReceiver.java Tue Aug 25 03:42:58 2009 +0200 @@ -11,10 +11,9 @@ public class RTPReceiver implements Runnable, RTPAppIntf { - RTPSession mRtpSession = null; - byte[] mAbData = null; - private boolean mKillme = false; - + RTPSession mRtpSession = null; + byte[] mAbData = null; + private boolean mKillme = false; public RTPReceiver(int rtpPort) { DatagramSocket rtpSocket = null; @@ -94,6 +93,6 @@ @Override public void userEvent(int arg0, Participant[] arg1) { // TODO Auto-generated method stub - + } } diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/RTPTransmitter.java --- a/src/com/beem/project/beem/jingle/RTPTransmitter.java Tue Aug 25 02:54:23 2009 +0200 +++ b/src/com/beem/project/beem/jingle/RTPTransmitter.java Tue Aug 25 03:42:58 2009 +0200 @@ -10,8 +10,8 @@ import org.jlibrtp.jlibrtp.RTPSession; public abstract class RTPTransmitter implements Runnable, RTPAppIntf { - protected RTPSession mRtpSession = null; - protected boolean mKillme = false; + protected RTPSession mRtpSession = null; + protected boolean mKillme = false; public RTPTransmitter(String remoteIP, int port) { diff -r 62b942273625 -r b11d01c264a3 src/com/beem/project/beem/jingle/package-info.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/com/beem/project/beem/jingle/package-info.java Tue Aug 25 03:42:58 2009 +0200 @@ -0,0 +1,4 @@ +/** + * This package contains the class used by the Beem Jingle process. + */ +package com.beem.project.beem.jingle;