# HG changeset patch # User Da Risk # Date 1238761090 -7200 # Node ID 8c3870db8e317c9c0bea90141dd7ddcb35131e50 # Parent ae9ca6ed909575a3fabc4b21020a511b79369c99 Rename some XMPP* classes in Xmpp* diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/BeemApplication.java --- a/src/com/beem/project/beem/BeemApplication.java Fri Apr 03 00:43:02 2009 +0200 +++ b/src/com/beem/project/beem/BeemApplication.java Fri Apr 03 14:18:10 2009 +0200 @@ -18,7 +18,7 @@ import android.os.IBinder; import android.os.Message; -import com.beem.project.beem.service.aidl.IXMPPFacade; +import com.beem.project.beem.service.aidl.IXmppFacade; /** * The Beem application. @@ -28,7 +28,7 @@ public class BeemApplication extends Application { private static BeemApplication mBeemApp; - private IXMPPFacade mFacade; + private IXmppFacade mFacade; private Context mApplicationContext; private Resources mPrivateResources; private List mQueue = new LinkedList(); @@ -45,7 +45,7 @@ @Override public void onServiceConnected(ComponentName name, IBinder service) { // TODO Auto-generated method stub - mFacade = IXMPPFacade.Stub.asInterface(service); + mFacade = IXmppFacade.Stub.asInterface(service); synchronized (mQueue) { for (Message msg : mQueue) { msg.sendToTarget(); @@ -141,7 +141,7 @@ * Get the facade to use to access the Beem service. * @return the facade or null if the application is not connected to the beem service. */ - public IXMPPFacade getXmppFacade() { + public IXmppFacade getXmppFacade() { return mFacade; } diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/BeemService.java --- a/src/com/beem/project/beem/BeemService.java Fri Apr 03 00:43:02 2009 +0200 +++ b/src/com/beem/project/beem/BeemService.java Fri Apr 03 14:18:10 2009 +0200 @@ -10,9 +10,9 @@ import android.os.RemoteException; import android.widget.Toast; -import com.beem.project.beem.service.XMPPConnectionAdapter; -import com.beem.project.beem.service.XMPPFacade; -import com.beem.project.beem.service.aidl.IXMPPFacade; +import com.beem.project.beem.service.XmppConnectionAdapter; +import com.beem.project.beem.service.XmppFacade; +import com.beem.project.beem.service.aidl.IXmppFacade; import com.beem.project.beem.service.aidl.IXmppConnection; /** * This class is for the Beem service. @@ -29,7 +29,7 @@ private String mPassword; private String mHost; - private IXMPPFacade.Stub mBind; + private IXmppFacade.Stub mBind; /** * {@inheritDoc} @@ -55,8 +55,8 @@ getString(R.string.PreferencePasswordKey), ""); mHost = mSettings.getString(getString(R.string.PreferenceHostKey), ""); mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); - mConnection = new XMPPConnectionAdapter("10.0.2.2", mLogin, mPassword); // address - mBind = new XMPPFacade((XMPPConnectionAdapter) mConnection); + mConnection = new XmppConnectionAdapter("10.0.2.2", mLogin, mPassword); // address + mBind = new XmppFacade((XmppConnectionAdapter) mConnection); } /** diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/service/XMPPConnectionAdapter.java --- a/src/com/beem/project/beem/service/XMPPConnectionAdapter.java Fri Apr 03 00:43:02 2009 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,332 +0,0 @@ -/** - * - */ -package com.beem.project.beem.service; - -import org.jivesoftware.smack.ConnectionConfiguration; -import org.jivesoftware.smack.ConnectionListener; -import org.jivesoftware.smack.Roster; -import org.jivesoftware.smack.XMPPConnection; -import org.jivesoftware.smack.XMPPException; -import org.jivesoftware.smackx.ServiceDiscoveryManager; -import org.jivesoftware.smackx.jingle.JingleManager; -import android.os.RemoteCallbackList; -import android.os.RemoteException; -import android.util.Log; -import com.beem.project.beem.BeemException; -import com.beem.project.beem.service.aidl.IBeemConnectionListener; -import com.beem.project.beem.service.aidl.IChatManager; -import com.beem.project.beem.service.aidl.IRoster; -import com.beem.project.beem.service.aidl.IXmppConnection; - -/** - * This class implements an adapter for XMPPConnection. - * @author darisk - */ -public class XMPPConnectionAdapter extends IXmppConnection.Stub { - - private static final String TAG = "XMPPConnectionAdapter"; - private XMPPConnection mAdaptee; - private IChatManager mChatManager; - private BeemException mLastException; - private String mLogin; - private String mPassword; - private RosterAdapter mRoster; - - private RemoteCallbackList mRemoteConnListeners = - new RemoteCallbackList(); - private ConnexionListenerAdapter mConListener = new ConnexionListenerAdapter(); - - /** - * Constructor. - * @param con The connection to adapt - * @param login The login to use - * @param password The password to use - */ - public XMPPConnectionAdapter(final XMPPConnection con, final String login, final String password) { - mAdaptee = con; - mLogin = login; - mPassword = password; - } - - /** - * Constructor. - * @param serviceName name of the service to connect to - * @param login login to use on connect - * @param password password to use on connect - */ - public XMPPConnectionAdapter(final String serviceName, final String login, final String password) { - this(new XMPPConnection(serviceName), login, password); - } - - /** - * Constructor. - * @param config Configuration to use in order to connect - * @param login login to use on connect - * @param password password to use on connect - */ - public XMPPConnectionAdapter(final ConnectionConfiguration config, final String login, final String password) { - this(new XMPPConnection(config), login, password); - } - - /** - * {@inheritDoc} - */ - @Override - public boolean connectSync() throws RemoteException { - try { - mAdaptee.connect(); - mAdaptee.addConnectionListener(mConListener); - mAdaptee.login(mLogin, mPassword, "BEEM"); - mChatManager = new BeemChatManager(mAdaptee.getChatManager()); - // TODO find why this cause a null pointer exception - // this.initFeatures(); // pour declarer les features xmpp qu'on supporte - mLastException = null; - triggerAsynchronousConnectEvent(); - return true; - } catch (XMPPException e) { - mLastException = new BeemException(e); - } - return false; - } - - /** - * {@inheritDoc} - */ - @Override - public boolean disconnect() { - mAdaptee.disconnect(); - mLastException = null; - return true; - } - - /** - * {@inheritDoc} - */ - @Override - public IRoster getRoster() throws RemoteException { - if (mRoster != null) - return mRoster; - Roster adap = mAdaptee.getRoster(); - if (adap == null) - return null; - mRoster = new RosterAdapter(adap); - return mRoster; - } - - /** - * {@inheritDoc} - */ - @Override - public final void connectAsync() throws RemoteException { - Thread t = new Thread(new Runnable() { - - @Override - public void run() { - try { - connectSync(); - } catch (RemoteException e) { - Log.e(TAG, "Error while connecting", e); - } - } - }); - t.start(); - } - - /** - * {@inheritDoc} - */ - @Override - public void addConnectionListener(IBeemConnectionListener listen) throws RemoteException { - if (listen != null) - mRemoteConnListeners.register(listen); - } - - /** - * {@inheritDoc} - */ - @Override - public void removeConnectionListener(IBeemConnectionListener listen) throws RemoteException { - if (listen != null) - mRemoteConnListeners.unregister(listen); - } - - /** - * {@inheritDoc} - */ - @Override - public IChatManager getChatManager() throws RemoteException { - return mChatManager; - } - - /** - * Trigger Connection event. - */ - private void triggerAsynchronousConnectEvent() { - mConListener.onConnect(); - } - - /** - * Listener for XMPP connection events. - * It will calls the remote listeners for connexion events. - * @author darisk - */ - private class ConnexionListenerAdapter implements ConnectionListener { - - /** - * Defaut constructor. - */ - public ConnexionListenerAdapter() { - // TODO Auto-generated constructor stub - } - - /** - * Method to execute when a connection event occurs. - */ - public void onConnect() { - final int n = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < n; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - listener.onConnect(); - } 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(); - } - - /** - * {@inheritDoc} - */ - @Override - public void connectionClosed() { - final int n = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < n; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - listener.connectionClosed(); - } 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(); - } - - /** - * {@inheritDoc} - */ - @Override - public void connectionClosedOnError(Exception arg0) { - final int n = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < n; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - listener.connectionClosedOnError(); - } 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(); - } - - /** - * {@inheritDoc} - */ - @Override - public void reconnectingIn(int arg0) { - final int n = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < n; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - listener.reconnectingIn(arg0); - } catch (RemoteException e) { - // The RemoteCallbackList will take care of removing the - // dead listeners. - } - } - mRemoteConnListeners.finishBroadcast(); - } - - /** - * {@inheritDoc} - */ - @Override - public void reconnectionFailed(Exception arg0) { - final int r = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < r; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - listener.reconnectionFailed(); - } 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(); - } - - /** - * {@inheritDoc} - */ - @Override - public void reconnectionSuccessful() { - final int n = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < n; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - listener.reconnectionSuccessful(); - } 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(); - } - - } - - /** - * enregistre les features dispo dans notre version Liste de features que Telepathy supporte. - * "http://www.google.com/xmpp/protocol/session" "http://www.google.com/transport/p2p" - * "http://jabber.org/protocol/jingle" "http://jabber.org/protocol/chatstates" "http://jabber.org/protocol/nick" - * "http://jabber.org/protocol/nick+notify" "http://jabber.org/protocol/si" "ttp://jabber.org/protocol/ibb" - * "ttp://telepathy.freedesktop.org/xmpp/tubes" "http://www.google.com/xmpp/protocol/voice/v1" - * "http://jabber.org/protocol/jingle/description/audio" "http://jabber.org/protocol/jingle/description/video" Liste - * de features que pidgin `supporte' (on notera la cradence de l'annonce): "jabber:iq:last" "jabber:iq:oob" - * "jabber:iq:time" "jabber:iq:version" "jabber:x:conference" "urn:xmpp:attention:0" "urn:xmpp:bob" "urn:xmpp:ping" - * "xmpp:urn:time" "http://jabber.org/protocol/bytestreams" "http://jabber.org/protocol/disco#info" - * "http://jabber.org/protocol/disco#items" "http://jabber.org/protocol/ibb" "http://jabber.org/protocol/muc" - * "http://jabber.org/protocol/muc#user" "http://jabber.org/protocol/si" - * "http://jabber.org/protocol/si/profile/file-transfer" "http://jabber.org/protocol/xhtml-im" - * "http://www.xmpp.org/extensions/xep-0199.html#ns" "http://jabber.org/protocol/mood" - * "http://jabber.org/protocol/mood+notify" "http://jabber.org/protocol/nick" - * "http://jabber.org/protocol/nick+notify" "http://jabber.org/protocol/tune" - * "http://jabber.org/protocol/tune+notify" "http://www.xmpp.org/extensions/xep-0084.html#ns-metadata" - * "http://www.xmpp.org/extensions/xep-0084.html#ns-data" - * "http://www.xmpp.org/extensions/xep-0084.html#ns-metadata+notify" - * "http://www.xmpp.org/extensions/xep-0167.html#ns" << Jingle RTP Sessions - */ - private void initFeatures() { - JingleManager.setJingleServiceEnabled(); - ServiceDiscoveryManager sdm = ServiceDiscoveryManager.getInstanceFor(mAdaptee); - sdm.addFeature("http://jabber.org/protocol/disco#info"); - // sdm.addFeature("http://jabber.org/protocol/nick"); - - } - -} diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/service/XMPPFacade.java --- a/src/com/beem/project/beem/service/XMPPFacade.java Fri Apr 03 00:43:02 2009 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,77 +0,0 @@ -package com.beem.project.beem.service; -import android.os.RemoteException; - -import com.beem.project.beem.service.aidl.IChatManager; -import com.beem.project.beem.service.aidl.IRoster; -import com.beem.project.beem.service.aidl.IXmppConnection; -import com.beem.project.beem.service.aidl.IXMPPFacade; - -/** - * This class is a facade for the Beem Service. - * @author darisk - */ -public class XMPPFacade extends IXMPPFacade.Stub { - - private XMPPConnectionAdapter mConnexion; - - /** - * Constructor for XMPPFacade. - * @param connection the connection use by the facade - */ - public XMPPFacade(final XMPPConnectionAdapter connection) { - this.mConnexion = connection; - } - - /** - * {@inheritDoc} - */ - @Override - public void connectAsync() throws RemoteException { - // TODO Auto-generated method stub - mConnexion.connectAsync(); - } - - /** - * {@inheritDoc} - */ - @Override - public void connectSync() throws RemoteException { - // TODO Auto-generated method stub - mConnexion.connectSync(); - } - - /** - * {@inheritDoc} - */ - @Override - public IXmppConnection createConnection() throws RemoteException { - // TODO Auto-generated method stub - return mConnexion; - } - - /** - * {@inheritDoc} - */ - @Override - public void disconnect() throws RemoteException { - // TODO Auto-generated method stub - mConnexion.disconnect(); - } - - /** - * {@inheritDoc} - */ - @Override - public IRoster getRoster() throws RemoteException { - return mConnexion.getRoster(); - } - - /** - * {@inheritDoc} - */ - @Override - public IChatManager getChatManager() throws RemoteException { - return mConnexion.getChatManager(); - } - -} diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/service/XmppConnectionAdapter.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/com/beem/project/beem/service/XmppConnectionAdapter.java Fri Apr 03 14:18:10 2009 +0200 @@ -0,0 +1,332 @@ +/** + * + */ +package com.beem.project.beem.service; + +import org.jivesoftware.smack.ConnectionConfiguration; +import org.jivesoftware.smack.ConnectionListener; +import org.jivesoftware.smack.Roster; +import org.jivesoftware.smack.XMPPConnection; +import org.jivesoftware.smack.XMPPException; +import org.jivesoftware.smackx.ServiceDiscoveryManager; +import org.jivesoftware.smackx.jingle.JingleManager; +import android.os.RemoteCallbackList; +import android.os.RemoteException; +import android.util.Log; +import com.beem.project.beem.BeemException; +import com.beem.project.beem.service.aidl.IBeemConnectionListener; +import com.beem.project.beem.service.aidl.IChatManager; +import com.beem.project.beem.service.aidl.IRoster; +import com.beem.project.beem.service.aidl.IXmppConnection; + +/** + * This class implements an adapter for XMPPConnection. + * @author darisk + */ +public class XmppConnectionAdapter extends IXmppConnection.Stub { + + private static final String TAG = "XMPPConnectionAdapter"; + private XMPPConnection mAdaptee; + private IChatManager mChatManager; + private BeemException mLastException; + private String mLogin; + private String mPassword; + private RosterAdapter mRoster; + + private RemoteCallbackList mRemoteConnListeners = + new RemoteCallbackList(); + private ConnexionListenerAdapter mConListener = new ConnexionListenerAdapter(); + + /** + * Constructor. + * @param con The connection to adapt + * @param login The login to use + * @param password The password to use + */ + public XmppConnectionAdapter(final XMPPConnection con, final String login, final String password) { + mAdaptee = con; + mLogin = login; + mPassword = password; + } + + /** + * Constructor. + * @param serviceName name of the service to connect to + * @param login login to use on connect + * @param password password to use on connect + */ + public XmppConnectionAdapter(final String serviceName, final String login, final String password) { + this(new XMPPConnection(serviceName), login, password); + } + + /** + * Constructor. + * @param config Configuration to use in order to connect + * @param login login to use on connect + * @param password password to use on connect + */ + public XmppConnectionAdapter(final ConnectionConfiguration config, final String login, final String password) { + this(new XMPPConnection(config), login, password); + } + + /** + * {@inheritDoc} + */ + @Override + public boolean connectSync() throws RemoteException { + try { + mAdaptee.connect(); + mAdaptee.addConnectionListener(mConListener); + mAdaptee.login(mLogin, mPassword, "BEEM"); + mChatManager = new BeemChatManager(mAdaptee.getChatManager()); + // TODO find why this cause a null pointer exception + // this.initFeatures(); // pour declarer les features xmpp qu'on supporte + mLastException = null; + triggerAsynchronousConnectEvent(); + return true; + } catch (XMPPException e) { + mLastException = new BeemException(e); + } + return false; + } + + /** + * {@inheritDoc} + */ + @Override + public boolean disconnect() { + mAdaptee.disconnect(); + mLastException = null; + return true; + } + + /** + * {@inheritDoc} + */ + @Override + public IRoster getRoster() throws RemoteException { + if (mRoster != null) + return mRoster; + Roster adap = mAdaptee.getRoster(); + if (adap == null) + return null; + mRoster = new RosterAdapter(adap); + return mRoster; + } + + /** + * {@inheritDoc} + */ + @Override + public final void connectAsync() throws RemoteException { + Thread t = new Thread(new Runnable() { + + @Override + public void run() { + try { + connectSync(); + } catch (RemoteException e) { + Log.e(TAG, "Error while connecting", e); + } + } + }); + t.start(); + } + + /** + * {@inheritDoc} + */ + @Override + public void addConnectionListener(IBeemConnectionListener listen) throws RemoteException { + if (listen != null) + mRemoteConnListeners.register(listen); + } + + /** + * {@inheritDoc} + */ + @Override + public void removeConnectionListener(IBeemConnectionListener listen) throws RemoteException { + if (listen != null) + mRemoteConnListeners.unregister(listen); + } + + /** + * {@inheritDoc} + */ + @Override + public IChatManager getChatManager() throws RemoteException { + return mChatManager; + } + + /** + * Trigger Connection event. + */ + private void triggerAsynchronousConnectEvent() { + mConListener.onConnect(); + } + + /** + * Listener for XMPP connection events. + * It will calls the remote listeners for connexion events. + * @author darisk + */ + private class ConnexionListenerAdapter implements ConnectionListener { + + /** + * Defaut constructor. + */ + public ConnexionListenerAdapter() { + // TODO Auto-generated constructor stub + } + + /** + * Method to execute when a connection event occurs. + */ + public void onConnect() { + final int n = mRemoteConnListeners.beginBroadcast(); + + for (int i = 0; i < n; i++) { + IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); + try { + listener.onConnect(); + } 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(); + } + + /** + * {@inheritDoc} + */ + @Override + public void connectionClosed() { + final int n = mRemoteConnListeners.beginBroadcast(); + + for (int i = 0; i < n; i++) { + IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); + try { + listener.connectionClosed(); + } 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(); + } + + /** + * {@inheritDoc} + */ + @Override + public void connectionClosedOnError(Exception arg0) { + final int n = mRemoteConnListeners.beginBroadcast(); + + for (int i = 0; i < n; i++) { + IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); + try { + listener.connectionClosedOnError(); + } 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(); + } + + /** + * {@inheritDoc} + */ + @Override + public void reconnectingIn(int arg0) { + final int n = mRemoteConnListeners.beginBroadcast(); + + for (int i = 0; i < n; i++) { + IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); + try { + listener.reconnectingIn(arg0); + } catch (RemoteException e) { + // The RemoteCallbackList will take care of removing the + // dead listeners. + } + } + mRemoteConnListeners.finishBroadcast(); + } + + /** + * {@inheritDoc} + */ + @Override + public void reconnectionFailed(Exception arg0) { + final int r = mRemoteConnListeners.beginBroadcast(); + + for (int i = 0; i < r; i++) { + IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); + try { + listener.reconnectionFailed(); + } 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(); + } + + /** + * {@inheritDoc} + */ + @Override + public void reconnectionSuccessful() { + final int n = mRemoteConnListeners.beginBroadcast(); + + for (int i = 0; i < n; i++) { + IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); + try { + listener.reconnectionSuccessful(); + } 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(); + } + + } + + /** + * enregistre les features dispo dans notre version Liste de features que Telepathy supporte. + * "http://www.google.com/xmpp/protocol/session" "http://www.google.com/transport/p2p" + * "http://jabber.org/protocol/jingle" "http://jabber.org/protocol/chatstates" "http://jabber.org/protocol/nick" + * "http://jabber.org/protocol/nick+notify" "http://jabber.org/protocol/si" "ttp://jabber.org/protocol/ibb" + * "ttp://telepathy.freedesktop.org/xmpp/tubes" "http://www.google.com/xmpp/protocol/voice/v1" + * "http://jabber.org/protocol/jingle/description/audio" "http://jabber.org/protocol/jingle/description/video" Liste + * de features que pidgin `supporte' (on notera la cradence de l'annonce): "jabber:iq:last" "jabber:iq:oob" + * "jabber:iq:time" "jabber:iq:version" "jabber:x:conference" "urn:xmpp:attention:0" "urn:xmpp:bob" "urn:xmpp:ping" + * "xmpp:urn:time" "http://jabber.org/protocol/bytestreams" "http://jabber.org/protocol/disco#info" + * "http://jabber.org/protocol/disco#items" "http://jabber.org/protocol/ibb" "http://jabber.org/protocol/muc" + * "http://jabber.org/protocol/muc#user" "http://jabber.org/protocol/si" + * "http://jabber.org/protocol/si/profile/file-transfer" "http://jabber.org/protocol/xhtml-im" + * "http://www.xmpp.org/extensions/xep-0199.html#ns" "http://jabber.org/protocol/mood" + * "http://jabber.org/protocol/mood+notify" "http://jabber.org/protocol/nick" + * "http://jabber.org/protocol/nick+notify" "http://jabber.org/protocol/tune" + * "http://jabber.org/protocol/tune+notify" "http://www.xmpp.org/extensions/xep-0084.html#ns-metadata" + * "http://www.xmpp.org/extensions/xep-0084.html#ns-data" + * "http://www.xmpp.org/extensions/xep-0084.html#ns-metadata+notify" + * "http://www.xmpp.org/extensions/xep-0167.html#ns" << Jingle RTP Sessions + */ + private void initFeatures() { + JingleManager.setJingleServiceEnabled(); + ServiceDiscoveryManager sdm = ServiceDiscoveryManager.getInstanceFor(mAdaptee); + sdm.addFeature("http://jabber.org/protocol/disco#info"); + // sdm.addFeature("http://jabber.org/protocol/nick"); + + } + +} diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/service/XmppFacade.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/com/beem/project/beem/service/XmppFacade.java Fri Apr 03 14:18:10 2009 +0200 @@ -0,0 +1,77 @@ +package com.beem.project.beem.service; +import android.os.RemoteException; + +import com.beem.project.beem.service.aidl.IChatManager; +import com.beem.project.beem.service.aidl.IRoster; +import com.beem.project.beem.service.aidl.IXmppConnection; +import com.beem.project.beem.service.aidl.IXmppFacade;; + +/** + * This class is a facade for the Beem Service. + * @author darisk + */ +public class XmppFacade extends IXmppFacade.Stub { + + private XmppConnectionAdapter mConnexion; + + /** + * Constructor for XMPPFacade. + * @param connection the connection use by the facade + */ + public XmppFacade(final XmppConnectionAdapter connection) { + this.mConnexion = connection; + } + + /** + * {@inheritDoc} + */ + @Override + public void connectAsync() throws RemoteException { + // TODO Auto-generated method stub + mConnexion.connectAsync(); + } + + /** + * {@inheritDoc} + */ + @Override + public void connectSync() throws RemoteException { + // TODO Auto-generated method stub + mConnexion.connectSync(); + } + + /** + * {@inheritDoc} + */ + @Override + public IXmppConnection createConnection() throws RemoteException { + // TODO Auto-generated method stub + return mConnexion; + } + + /** + * {@inheritDoc} + */ + @Override + public void disconnect() throws RemoteException { + // TODO Auto-generated method stub + mConnexion.disconnect(); + } + + /** + * {@inheritDoc} + */ + @Override + public IRoster getRoster() throws RemoteException { + return mConnexion.getRoster(); + } + + /** + * {@inheritDoc} + */ + @Override + public IChatManager getChatManager() throws RemoteException { + return mConnexion.getChatManager(); + } + +} diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/service/aidl/IXMPPFacade.aidl --- a/src/com/beem/project/beem/service/aidl/IXMPPFacade.aidl Fri Apr 03 00:43:02 2009 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,21 +0,0 @@ -package com.beem.project.beem.service.aidl; - -import com.beem.project.beem.service.aidl.IXmppConnection; -import com.beem.project.beem.service.aidl.IRoster; -import com.beem.project.beem.service.aidl.IChatManager; - -interface IXMPPFacade { - - IXmppConnection createConnection(); - - IRoster getRoster(); - - void connectSync(); - - void connectAsync(); - - void disconnect(); - - IChatManager getChatManager(); - -} diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/service/aidl/IXmppFacade.aidl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/com/beem/project/beem/service/aidl/IXmppFacade.aidl Fri Apr 03 14:18:10 2009 +0200 @@ -0,0 +1,21 @@ +package com.beem.project.beem.service.aidl; + +import com.beem.project.beem.service.aidl.IXmppConnection; +import com.beem.project.beem.service.aidl.IRoster; +import com.beem.project.beem.service.aidl.IChatManager; + +interface IXmppFacade { + + IXmppConnection createConnection(); + + IRoster getRoster(); + + void connectSync(); + + void connectAsync(); + + void disconnect(); + + IChatManager getChatManager(); + +} diff -r ae9ca6ed9095 -r 8c3870db8e31 src/com/beem/project/beem/ui/ContactList.java --- a/src/com/beem/project/beem/ui/ContactList.java Fri Apr 03 00:43:02 2009 +0200 +++ b/src/com/beem/project/beem/ui/ContactList.java Fri Apr 03 14:18:10 2009 +0200 @@ -22,12 +22,12 @@ import com.beem.project.beem.BeemApplication; import com.beem.project.beem.R; import com.beem.project.beem.service.Contact; -import com.beem.project.beem.service.aidl.IXMPPFacade; +import com.beem.project.beem.service.aidl.IXmppFacade; public class ContactList extends ExpandableListActivity { private static final String TAG = "CONTACTLIST_ACT"; - private IXMPPFacade mService = null; + private IXmppFacade mService = null; private Handler mHandler; private BeemApplication mBeemApplication;