toto
authorjibe@jibe-desktop
Thu, 09 Apr 2009 20:02:26 +0200
changeset 98 4d6ff785605d
parent 97 58622a0f9485
child 99 8de21ac527ce
toto
res/drawable/avatar.png
res/drawable/away.png
res/drawable/background.png
res/drawable/bart.jpg
res/drawable/chat.png
res/drawable/closed.png
res/drawable/connecting.png
res/drawable/dnd.png
res/drawable/error.png
res/drawable/invisible.png
res/drawable/logo.jpg
res/drawable/message.png
res/drawable/not_in_the_roster.png
res/drawable/offline.png
res/drawable/online.png
res/drawable/requested.png
res/drawable/xmpp.jpg
res/layout/contactlist.xml
res/layout/contactlistcontact.xml
res/layout/contactlistgroup.xml
res/layout/contactlistsettings.xml
res/layout/messagelist.xml
res/layout/sendim.xml
res/layout/sendimdialogsmiley.xml
res/menu/contactlistmenu.xml
res/menu/sendimmenu.xml
res/values/colors.xml
res/values/strings.xml
res/values/style.xml
src/.what
src/com/beem/project/beem/BeemApplication.java
src/com/beem/project/beem/BeemException.java
src/com/beem/project/beem/BeemService.java
src/com/beem/project/beem/jingle/Caller.java
src/com/beem/project/beem/jingle/FileSender.java
src/com/beem/project/beem/jingle/RTPMediaManager.java
src/com/beem/project/beem/jingle/RTPMediaSession.java
src/com/beem/project/beem/jingle/RTPReceiver.java
src/com/beem/project/beem/jingle/RTPTransmitter.java
src/com/beem/project/beem/jingle/Receiver.java
src/com/beem/project/beem/jingle/ReceiverMediaManager.java
src/com/beem/project/beem/jingle/SenderMediaManager.java
src/com/beem/project/beem/jingle/SenderMediaSession.java
src/com/beem/project/beem/provider/Beem.java
src/com/beem/project/beem/provider/BeemDatabaseHelper.java
src/com/beem/project/beem/provider/ContactProvider.java
src/com/beem/project/beem/provider/UserProvider.java
src/com/beem/project/beem/service/BeemChatManager.java
src/com/beem/project/beem/service/ChatAdapter.java
src/com/beem/project/beem/service/Contact.java
src/com/beem/project/beem/service/Message.java
src/com/beem/project/beem/service/PresenceAdapter.java
src/com/beem/project/beem/service/RosterAdapter.java
src/com/beem/project/beem/service/XmppConnectionAdapter.java
src/com/beem/project/beem/service/XmppFacade.java
src/com/beem/project/beem/service/aidl/IBeemConnectionListener.aidl
src/com/beem/project/beem/service/aidl/IBeemRosterListener.aidl
src/com/beem/project/beem/service/aidl/IChat.aidl
src/com/beem/project/beem/service/aidl/IChatManager.aidl
src/com/beem/project/beem/service/aidl/IChatManagerListener.aidl
src/com/beem/project/beem/service/aidl/IContact.aidl
src/com/beem/project/beem/service/aidl/IMessageListener.aidl
src/com/beem/project/beem/service/aidl/IRoster.aidl
src/com/beem/project/beem/service/aidl/IXmppConnection.aidl
src/com/beem/project/beem/service/aidl/IXmppFacade.aidl
src/com/beem/project/beem/ui/ContactList.java
src/com/beem/project/beem/ui/ContactListSettings.java
src/com/beem/project/beem/ui/SendIM.java
src/com/beem/project/beem/ui/SendIMDialogSmiley.java
src/jlibrtp/AppCallerThread.java
src/jlibrtp/CompRtcpPkt.java
src/jlibrtp/DataFrame.java
src/jlibrtp/DebugAppIntf.java
src/jlibrtp/LICENSE.txt
src/jlibrtp/Participant.java
src/jlibrtp/ParticipantDatabase.java
src/jlibrtp/PktBufNode.java
src/jlibrtp/PktBuffer.java
src/jlibrtp/README.txt
src/jlibrtp/RTCPAVPFIntf.java
src/jlibrtp/RTCPAppIntf.java
src/jlibrtp/RTCPReceiverThread.java
src/jlibrtp/RTCPSenderThread.java
src/jlibrtp/RTCPSession.java
src/jlibrtp/RTPAppIntf.java
src/jlibrtp/RTPReceiverThread.java
src/jlibrtp/RTPSession.java
src/jlibrtp/RtcpPkt.java
src/jlibrtp/RtcpPktAPP.java
src/jlibrtp/RtcpPktBYE.java
src/jlibrtp/RtcpPktPSFB.java
src/jlibrtp/RtcpPktRR.java
src/jlibrtp/RtcpPktRTPFB.java
src/jlibrtp/RtcpPktSDES.java
src/jlibrtp/RtcpPktSR.java
src/jlibrtp/RtpPkt.java
src/jlibrtp/StaticProcs.java
src/jlibrtp/ValidateParticipantDatabase.java
src/jlibrtp/ValidatePktBuffer.java
src/jlibrtp/ValidateRtcpPkt.java
src/jlibrtp/ValidateStaticProcs.java
src/jlibrtp/package.html
--- a/res/menu/contactlistmenu.xml	Thu Apr 09 19:03:23 2009 +0200
+++ b/res/menu/contactlistmenu.xml	Thu Apr 09 20:02:26 2009 +0200
@@ -1,4 +1,4 @@
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
-	<item android:title="Creer ou Editer un compte" android:id="@+id/account_edit"/>
+	<item android:title="Creer ou Editer un compte" android:id="@+id/account_edit" android:icon="@drawable/xmpp"/>
 	<item android:title="L'equipe Beem" android:id="@+id/account_about"/>
 </menu>
--- a/res/values/style.xml	Thu Apr 09 19:03:23 2009 +0200
+++ b/res/values/style.xml	Thu Apr 09 20:02:26 2009 +0200
@@ -3,10 +3,12 @@
   <style name="customtheme" parent="android:Theme">
  </style>
  
-  	<style name="customtheme.login"> 
+  	<style name="customtheme.contactList"> 
     <item name="android:windowBackground">@drawable/background</item>
     <item name="android:windowNoTitle">true</item>
+    <item name="android:textColor">#FFFF00</item>
+    <item name="android:typeface">sans</item>
+    <item name="android:textSize">18sp</item>
 
- 
-  </style>        
+  </style>
 </resources>
\ No newline at end of file
--- a/src/com/beem/project/beem/BeemApplication.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/BeemApplication.java	Thu Apr 09 20:02:26 2009 +0200
@@ -19,8 +19,6 @@
 import android.os.IBinder;
 import android.os.Message;
 import android.os.RemoteException;
-import android.util.Log;
-import android.widget.Toast;
 
 import com.beem.project.beem.service.aidl.IBeemConnectionListener;
 import com.beem.project.beem.service.aidl.IXmppConnection;
@@ -33,9 +31,7 @@
 public class BeemApplication extends Application {
 
     private static BeemApplication mBeemApp;
-    private Activity mActivity;
     private static final Intent SERVICE_INTENT = new Intent();
-    public static final String TAG = "BeemApplication";
     private IXmppFacade mFacade;
     private Context mApplicationContext;
     private Resources mPrivateResources;
@@ -91,7 +87,6 @@
 	if (mBeemApp == null) {
 	    mBeemApp = new BeemApplication();
 	}
-	mBeemApp.mActivity = activity;
 	mBeemApp.mProgressDialog = new ProgressDialog(activity);
 	mBeemApp.mProgressDialog.setTitle("Beem");
 	mBeemApp.mProgressDialog.setIcon(R.drawable.logo);
@@ -158,34 +153,6 @@
 	return mIsConnected;
     }
 
-    private class ConnectionRunnable implements Runnable {
-	private String mErrorMsg;	
-	
-	public ConnectionRunnable(String string) {
-	    this.mErrorMsg = string;
-	}
-
-	@Override
-	public void run() {
-	    mBeemApp.mProgressDialog.setMessage(mErrorMsg);	    
-	}
-
-	/**
-	 * @param mErrorMsg the mErrorMsg to set
-	 */
-	public void setMErrorMsg(String mErrorMsg) {
-	    this.mErrorMsg = mErrorMsg;
-	}
-
-	/**
-	 * @return the mErrorMsg
-	 */
-	public String getMErrorMsg() {
-	    return mErrorMsg;
-	}
-
-    }
-
     /**
      * Connection listener use to hide the progress dialog.
      * @author darisk
@@ -205,7 +172,6 @@
 	@Override
 	public void connectionClosed() throws RemoteException {
 	    // TODO Auto-generated method stub
-	    Log.e("BeemApp","test1");
 
 	}
 
@@ -214,8 +180,7 @@
 	 */
 	@Override
 	public void connectionClosedOnError() throws RemoteException {
-	    mBeemApp.mProgressDialog.setMessage("Connexion closed on error");
-	    Log.e(TAG,"onnectionClosedOnError");
+	    // TODO Auto-generated method stub
 	    // afficher une notification et reafficher le progress dialog
 	}
 
@@ -250,7 +215,6 @@
 	@Override
 	public void reconnectionFailed() throws RemoteException {
 	    // TODO Auto-generated method stub
-	    Log.e("BeemApp","test3");
 
 	}
 
@@ -263,13 +227,6 @@
 
 	}
 
-	@Override
-	public void connectionFailed(String errorMsg) throws RemoteException {
-	    Log.i(TAG, "Connection Failed");
-	    ConnectionRunnable cRun = new ConnectionRunnable(errorMsg);
-	    mBeemApp.mActivity.runOnUiThread(cRun);
-	}
-
     }
 
 }
--- a/src/com/beem/project/beem/BeemService.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/BeemService.java	Thu Apr 09 20:02:26 2009 +0200
@@ -77,7 +77,7 @@
 	mLogin = mSettings.getString(getString(R.string.PreferenceLoginKey), "");
 	mPassword = mSettings.getString(getString(R.string.PreferencePasswordKey), "");
 	mHost = mSettings.getString(getString(R.string.PreferenceHostKey), "");
-	mHost = "10.0.2.5";
+	mHost = "10.0.2.2";
 	initConnectionConfig();
 	mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
 	mConnection = new XmppConnectionAdapter(mConnectionConfiguration, mLogin, mPassword);
@@ -137,101 +137,95 @@
 	}
 	mConnectionConfiguration.setSendPresence(true);
     }
-
+    
     private void initRosterRequestListener() {
 	Roster.setDefaultSubscriptionMode(SubscriptionMode.manual);
 	final XMPPConnection con =  mConnection.getAdaptee();
 	try {
 	    // l'ajout d'un packet listener ne peut etre effectuer que lorsqu'on est connecte au serveur
 	    mConnection.addConnectionListener(new IBeemConnectionListener.Stub() {
-
-		@Override
-		public void reconnectionSuccessful() throws RemoteException {
-		    // TODO Auto-generated method stub
-		    PacketFilter filter = new PacketFilter() {
-
-			@Override
-			public boolean accept(Packet packet) {
-			    if (packet instanceof Presence) {
-				Presence pres = (Presence) packet;
-				if (pres.getType() == Presence.Type.subscribe)
-				    return true;
-			    }
-			    return false;
-			}
-		    };
-		    con.addPacketListener(new PacketListener() {
-
-			@Override
-			public void processPacket(Packet packet) {
-			    // TODO Auto-generated method stub
-			    Log.i("TEST", "Une demande recue");
-			}
-		    }, filter);
-		}
-
-		@Override
-		public void reconnectionFailed() throws RemoteException {
-		    // TODO Auto-generated method stub
-
-		}
-
-		@Override
-		public void reconnectingIn(int seconds) throws RemoteException {
-		    // TODO Auto-generated method stub
-
-		}
-
-		@Override
-		public void onConnect() throws RemoteException {
-		    // TODO Auto-generated method stub
-		    PacketFilter filter = new PacketFilter() {
-
-			@Override
-			public boolean accept(Packet packet) {
-			    if (packet instanceof Presence) {
-				Presence pres = (Presence) packet;
-				if (pres.getType() == Presence.Type.subscribe)
-				    return true;
-			    }
-			    return false;
-			}
-		    };
-		    con.addPacketListener(new PacketListener() {
-
-			@Override
-			public void processPacket(Packet packet) {
-			    // TODO Auto-generated method stub
-			    Log.i("TEST", "Une demande recue");
-			}
-		    }, filter);
-
-		}
-
-		@Override
-		public void connectionClosedOnError() throws RemoteException {
-		    // TODO Auto-generated method stub
-
-		}
-
-		@Override
-		public void connectionClosed() throws RemoteException {
-		    // TODO Auto-generated method stub
-
-		}
-
-
-		@Override
-		public void connectionFailed(String errorMsg) throws RemoteException {
-		    // TODO Auto-generated method stub
-		    
-		}
+	    
+	        @Override
+	        public void reconnectionSuccessful() throws RemoteException {
+	    	// TODO Auto-generated method stub
+	            PacketFilter filter = new PacketFilter() {
+	        	
+	    	    @Override
+	    	    public boolean accept(Packet packet) {
+	    		if (packet instanceof Presence) {
+	    		    Presence pres = (Presence) packet;
+	    		    if (pres.getType() == Presence.Type.subscribe)
+	    			return true;
+	    		}
+	    		return false;
+	    	    }
+	    	};
+	    	con.addPacketListener(new PacketListener() {
+	    	
+	    	    @Override
+	    	    public void processPacket(Packet packet) {
+	    		// TODO Auto-generated method stub
+	    		Log.i("TEST", "Une demande recue");
+	    	    }
+	    	}, filter);
+	    	
+	        }
+	    
+	        @Override
+	        public void reconnectionFailed() throws RemoteException {
+	    	// TODO Auto-generated method stub
+	    
+	        }
+	    
+	        @Override
+	        public void reconnectingIn(int seconds) throws RemoteException {
+	    	// TODO Auto-generated method stub
+	    
+	        }
+	    
+	        @Override
+	        public void onConnect() throws RemoteException {
+	    	// TODO Auto-generated method stub
+	            PacketFilter filter = new PacketFilter() {
+	        	
+	    	    @Override
+	    	    public boolean accept(Packet packet) {
+	    		if (packet instanceof Presence) {
+	    		    Presence pres = (Presence) packet;
+	    		    if (pres.getType() == Presence.Type.subscribe)
+	    			return true;
+	    		}
+	    		return false;
+	    	    }
+	    	};
+	    	con.addPacketListener(new PacketListener() {
+	    	
+	    	    @Override
+	    	    public void processPacket(Packet packet) {
+	    		// TODO Auto-generated method stub
+	    		Log.i("TEST", "Une demande recue");
+	    	    }
+	    	}, filter);
+	    	
+	        }
+	    
+	        @Override
+	        public void connectionClosedOnError() throws RemoteException {
+	    	// TODO Auto-generated method stub
+	    
+	        }
+	    
+	        @Override
+	        public void connectionClosed() throws RemoteException {
+	    	// TODO Auto-generated method stub
+	    
+	        }
 	    });
 	} catch (RemoteException e) {
 	    // TODO Auto-generated catch block
 	    e.printStackTrace();
 	}
-
+	
     }
 
     /**
--- a/src/com/beem/project/beem/service/BeemChatManager.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/BeemChatManager.java	Thu Apr 09 20:02:26 2009 +0200
@@ -11,8 +11,6 @@
 import org.jivesoftware.smack.ChatManagerListener;
 import org.jivesoftware.smack.MessageListener;
 import org.jivesoftware.smack.packet.Message;
-import org.jivesoftware.smackx.ChatState;
-import org.jivesoftware.smackx.ChatStateListener;
 
 import android.os.RemoteCallbackList;
 import android.os.RemoteException;
@@ -90,7 +88,7 @@
     public void removeChatCreationListener(IChatManagerListener listener) throws RemoteException {
 	mRemoteChatCreationListeners.unregister(listener);
     }
-
+    
     private IChat getChat(Chat chat) {
 	if (mChats.containsKey(chat.getParticipant())) {
 	    return mChats.get(chat.getParticipant());
@@ -104,12 +102,13 @@
      * A listener for all the chat creation event that happens on the connection.
      * @author darisk
      */
-    private class ChatListener implements ChatStateListener, ChatManagerListener, MessageListener {
+    private class ChatListener implements ChatManagerListener, MessageListener {
 
 	/**
 	 * Constructor.
 	 */
 	public ChatListener() {
+	    // TODO Auto-generated constructor stub
 	}
 
 	/**
@@ -139,8 +138,8 @@
 	@Override
 	public void processMessage(Chat chat, Message message) {
 	    IChat newchat = getChat(chat);
-	    final int n = mRemoteMessageListeners.beginBroadcast();
-	    for (int i = 0; i < n; i++) {
+	   final int n = mRemoteMessageListeners.beginBroadcast();
+	   for (int i = 0; i < n; i++) {
 		IMessageListener listener = mRemoteMessageListeners.getBroadcastItem(i);
 		try {
 		    listener.processMessage(newchat, new com.beem.project.beem.service.Message(message));
@@ -153,15 +152,6 @@
 	    }
 	    mRemoteMessageListeners.finishBroadcast();
 	}
-
-	@Override
-	public void stateChanged(Chat chat, ChatState state) {
-	    try {
-		mChats.get(chat.getParticipant()).setState(state.name());
-	    } catch (RemoteException e) {
-		e.printStackTrace();
-	    }
-	}
     }
 
 }
--- a/src/com/beem/project/beem/service/ChatAdapter.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/ChatAdapter.java	Thu Apr 09 20:02:26 2009 +0200
@@ -17,7 +17,6 @@
 public class ChatAdapter extends IChat.Stub {
     private Chat mAdaptee;
     private Contact mParticipant;
-    private String mState;
 
     /**
      * Constructor.
@@ -57,14 +56,4 @@
 	}
     }
 
-    @Override
-    public String getState() throws RemoteException {
-	return mState;
-    }
-    
-    @Override
-    public void setState(String state) throws RemoteException {
-	mState = state;
-    }
-
 }
--- a/src/com/beem/project/beem/service/Contact.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/Contact.java	Thu Apr 09 20:02:26 2009 +0200
@@ -6,6 +6,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import org.jivesoftware.smack.RosterEntry;
 import org.jivesoftware.smack.packet.Presence;
 import org.jivesoftware.smack.packet.Presence.Mode;
 
@@ -162,7 +163,6 @@
      * @param presence the presence containing status
      */
     public void setStatus(Presence presence) {
-	Log.i(TAG,"PRESENCE");
 	if (presence.getType().equals(Presence.Type.unavailable)) {
 	    Log.d(TAG, "Presence pas dispo");
 	    mStatus = Contact.CONTACT_STATUS_DISCONNECT;
--- a/src/com/beem/project/beem/service/RosterAdapter.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/RosterAdapter.java	Thu Apr 09 20:02:26 2009 +0200
@@ -42,7 +42,6 @@
      * @param roster the roster to adapt
      */
     public RosterAdapter(final Roster roster) {
-	Log.d(TAG, "CTOR");
 	mAdaptee = roster;
 	roster.addRosterListener(mRosterListener);
 	for (RosterEntry entry : roster.getEntries()) {
@@ -186,7 +185,7 @@
 	 */
 	@Override
 	public void entriesUpdated(Collection<String> addresses) {
-	    Log.d(TAG, "Update de l'entry");
+	    Log.i(TAG, "Update de l'entry");
 	    final int n = mRemoteRosListeners.beginBroadcast();
 
 	    List<String> tab = new ArrayList<String>();
--- a/src/com/beem/project/beem/service/XmppConnectionAdapter.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/XmppConnectionAdapter.java	Thu Apr 09 20:02:26 2009 +0200
@@ -4,12 +4,10 @@
 package com.beem.project.beem.service;
 
 import org.jivesoftware.smack.ConnectionConfiguration;
-import org.jivesoftware.smack.ConnectionCreationListener;
 import org.jivesoftware.smack.ConnectionListener;
 import org.jivesoftware.smack.Roster;
 import org.jivesoftware.smack.XMPPConnection;
 import org.jivesoftware.smack.XMPPException;
-import org.jivesoftware.smack.packet.XMPPError;
 import org.jivesoftware.smackx.ServiceDiscoveryManager;
 import org.jivesoftware.smackx.jingle.JingleManager;
 import android.os.RemoteCallbackList;
@@ -87,7 +85,7 @@
 	    return true;
 	} catch (XMPPException e) {
 	    Log.e(TAG, "Error while connecting", e);
-	    mConListener.connectionFailed(e.getXMPPError().getMessage()); //
+	    mLastException = new BeemException(e);
 	}
 	return false;
     }
@@ -312,23 +310,7 @@
 	    }
 	    mRemoteConnListeners.finishBroadcast();
 	}
-	
-	public void connectionFailed(String errorMsg) {
-	    Log.i(TAG, "Connection Failed");
-	    final int n = mRemoteConnListeners.beginBroadcast();
 
-	    for (int i = 0; i < n; i++) {
-		IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i);
-		try {
-		    listener.connectionFailed(errorMsg);
-		} catch (RemoteException e) {
-		    // The RemoteCallbackList will take care of removing the
-		    // dead listeners.
-		    Log.w(TAG, "Error while triggering remote connection listeners", e);
-		}
-	    }
-	    mRemoteConnListeners.finishBroadcast();
-	}
     }
 
     /**
--- a/src/com/beem/project/beem/service/aidl/IBeemConnectionListener.aidl	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/aidl/IBeemConnectionListener.aidl	Thu Apr 09 20:02:26 2009 +0200
@@ -36,9 +36,4 @@
      *  Callback to call when the reconnection is successfull
      */ 
     void reconnectionSuccessful();
-    
-    /**
-     *  Callback to call when the connection Failed
-     */ 
-    void connectionFailed(in String errorMsg);
 }
--- a/src/com/beem/project/beem/service/aidl/IChat.aidl	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/service/aidl/IChat.aidl	Thu Apr 09 20:02:26 2009 +0200
@@ -18,9 +18,5 @@
 	 * Get the participant of the chat
 	 * @return the participant
 	 */
-	Contact getParticipant();
-	
-	String getState();
-	
-	void setState(String state);
+	Contact getParticipant();	
 }
\ No newline at end of file
--- a/src/com/beem/project/beem/ui/ContactList.java	Thu Apr 09 19:03:23 2009 +0200
+++ b/src/com/beem/project/beem/ui/ContactList.java	Thu Apr 09 20:02:26 2009 +0200
@@ -61,6 +61,7 @@
     @Override
     protected void onCreate(Bundle saveBundle) {
 	super.onCreate(saveBundle);
+	setTheme(R.style.customtheme_contactList);
 	mHandler = new Handler();
 	mBeemApplication = BeemApplication.getApplication(this);
 	mSettings = getSharedPreferences(