# HG changeset patch # User Nikita Kozlov # Date 1314054746 -7200 # Node ID a4bbcfbd0a9157249911a453006639ea94512546 # Parent 211f45e7bbd3ed5e268366b9718d887f188131ba managing otr fingerprint authentication diff -r 211f45e7bbd3 -r a4bbcfbd0a91 res/menu/chat.xml --- a/res/menu/chat.xml Mon Aug 22 22:35:31 2011 +0200 +++ b/res/menu/chat.xml Tue Aug 23 01:12:26 2011 +0200 @@ -14,10 +14,8 @@ android:visible="true" android:title="@string/chat_menu_start_otr_session" /> - - + diff -r 211f45e7bbd3 -r a4bbcfbd0a91 res/values/strings.xml --- a/res/values/strings.xml Mon Aug 22 22:35:31 2011 +0200 +++ b/res/values/strings.xml Tue Aug 23 01:12:26 2011 +0200 @@ -272,10 +272,8 @@ Contacts list Switch chat Start OTR session - Listen for OTR session Stop OTR session - OTR local key - OTR remote key + OTR verify key OTR actions Opened chats Close this chat @@ -287,8 +285,12 @@ PLAINTEXT ENCRYPTED FINISHED - Verify remote fingerprint %s ? - Local fingerprint %s + AUTHENTICATED + + Authenticating a buddy helps ensure that the person you are talking to is who they claim to be.\n\n + To verify the fingerprint, contact your buddy via some other authenticated channel, such as the telephone or GPG-signed email. Each of you should tell your fingerprint to the other.\n\n + If everything matches up, you should indicate in the above dialog that you have verified the fingerprint.\n\n + Local fingerprint %s\n\nRemote fingerprint %s\n\nVerify fingerprint ? Available Available to chat diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/BeemApplication.java --- a/src/com/beem/project/beem/BeemApplication.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/BeemApplication.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem; @@ -49,15 +49,14 @@ import android.preference.PreferenceManager; /** - * This class contains informations that needs to be global in the application. - * Theses informations must be necessary for the activities and the service. + * This class contains informations that needs to be global in the application. Theses informations must be necessary + * for the activities and the service. * @author Da Risk */ public class BeemApplication extends Application { - /* Constants for PREFERENCE_KEY - * The format of the Preference key is : - * $name_KEY = "$name" + /* + * Constants for PREFERENCE_KEY The format of the Preference key is : $name_KEY = "$name" */ /** Preference key for account username. */ public static final String ACCOUNT_USERNAME_KEY = "account_username"; @@ -160,7 +159,6 @@ /** * Enable Pep in the application context. - * * @param enabled true to enable pep */ public void setPepEnabled(boolean enabled) { @@ -169,7 +167,6 @@ /** * Check if Pep is enabled. - * * @return true if enabled */ public boolean isPepEnabled() { @@ -188,7 +185,7 @@ } @Override - public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { + public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (BeemApplication.ACCOUNT_USERNAME_KEY.equals(key) || BeemApplication.ACCOUNT_PASSWORD_KEY.equals(key)) { String login = mSettings.getString(BeemApplication.ACCOUNT_USERNAME_KEY, ""); String password = mSettings.getString(BeemApplication.ACCOUNT_PASSWORD_KEY, ""); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/BeemService.java --- a/src/com/beem/project/beem/BeemService.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/BeemService.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem; import org.jivesoftware.smack.ConnectionConfiguration; @@ -89,10 +89,8 @@ import com.beem.project.beem.smack.caps.CapsProvider; /** - * This class is for the Beem service. - * It must contains every global informations needed to maintain the background service. - * The connection to the xmpp server will be made asynchronously when the service - * will start. + * This class is for the Beem service. It must contains every global informations needed to maintain the background + * service. The connection to the xmpp server will be made asynchronously when the service will start. * @author darisk */ public class BeemService extends Service { @@ -134,7 +132,7 @@ */ private void initConnectionConfig() { // TODO add an option for this ? -// SmackConfiguration.setPacketReplyTimeout(30000); + // SmackConfiguration.setPacketReplyTimeout(30000); mUseProxy = mSettings.getBoolean(BeemApplication.PROXY_USE_KEY, false); if (mUseProxy) { String stype = mSettings.getString(BeemApplication.PROXY_TYPE_KEY, "HTTP"); @@ -182,7 +180,6 @@ return true; } - /** * {@inheritDoc} */ @@ -212,8 +209,8 @@ if (!"".equals(tmpPort)) mPort = Integer.parseInt(tmpPort); } - if (mSettings.getBoolean(BeemApplication.FULL_JID_LOGIN_KEY, false) || - "gmail.com".equals(mService) || "googlemail.com".equals(mService)) { + if (mSettings.getBoolean(BeemApplication.FULL_JID_LOGIN_KEY, false) || "gmail.com".equals(mService) + || "googlemail.com".equals(mService)) { mLogin = tmpJid; } @@ -267,7 +264,8 @@ if (mSettings.getBoolean(BeemApplication.NOTIFICATION_VIBRATE_KEY, true)) notif.defaults |= Notification.DEFAULT_VIBRATE; notif.defaults |= Notification.DEFAULT_LIGHTS; - String ringtoneStr = mSettings.getString(BeemApplication.NOTIFICATION_SOUND_KEY, Settings.System.DEFAULT_NOTIFICATION_URI.toString()); + String ringtoneStr = mSettings.getString(BeemApplication.NOTIFICATION_SOUND_KEY, + Settings.System.DEFAULT_NOTIFICATION_URI.toString()); notif.sound = Uri.parse(ringtoneStr); mNotificationManager.notify(id, notif); } @@ -314,7 +312,6 @@ /** * Get the notification manager system service. - * * @return the notification manager service. */ public NotificationManager getNotificationManager() { @@ -346,8 +343,7 @@ // Chat State ChatStateExtension.Provider chatState = new ChatStateExtension.Provider(); pm.addExtensionProvider("active", "http://jabber.org/protocol/chatstates", chatState); - pm.addExtensionProvider("composing", "http://jabber.org/protocol/chatstates", - chatState); + pm.addExtensionProvider("composing", "http://jabber.org/protocol/chatstates", chatState); pm.addExtensionProvider("paused", "http://jabber.org/protocol/chatstates", chatState); pm.addExtensionProvider("inactive", "http://jabber.org/protocol/chatstates", chatState); pm.addExtensionProvider("gone", "http://jabber.org/protocol/chatstates", chatState); @@ -364,81 +360,51 @@ pm.addExtensionProvider("event", "http://jabber.org/protocol/pubsub#event", new EventProvider()); //TODO rajouter les manquants pour du full pubsub - //PEP avatar pm.addExtensionProvider("metadata", "urn:xmpp:avatar:metadata", new AvatarMetadataProvider()); pm.addExtensionProvider("data", "urn:xmpp:avatar:data", new AvatarProvider()); -// PEPProvider pep = new PEPProvider(); -// AvatarMetadataProvider avaMeta = new AvatarMetadataProvider(); -// pep.registerPEPParserExtension("urn:xmpp:avatar:metadata", avaMeta); -// pm.addExtensionProvider("event", "http://jabber.org/protocol/pubsub#event", pep); + // PEPProvider pep = new PEPProvider(); + // AvatarMetadataProvider avaMeta = new AvatarMetadataProvider(); + // pep.registerPEPParserExtension("urn:xmpp:avatar:metadata", avaMeta); + // pm.addExtensionProvider("event", "http://jabber.org/protocol/pubsub#event", pep); /* - // Private Data Storage - pm.addIQProvider("query", "jabber:iq:private", new PrivateDataManager.PrivateDataIQProvider()); - // Time - try { - pm.addIQProvider("query", "jabber:iq:time", Class.forName("org.jivesoftware.smackx.packet.Time")); - } catch (ClassNotFoundException e) { - Log.w("TestClient", "Can't load class for org.jivesoftware.smackx.packet.Time"); - } - // Roster Exchange - pm.addExtensionProvider("x", "jabber:x:roster", new RosterExchangeProvider()); - // Message Events - pm.addExtensionProvider("x", "jabber:x:event", new MessageEventProvider()); - // XHTML - pm.addExtensionProvider("html", "http://jabber.org/protocol/xhtml-im", new XHTMLExtensionProvider()); - // Group Chat Invitations - pm.addExtensionProvider("x", "jabber:x:conference", new GroupChatInvitation.Provider()); - // Data Forms - pm.addExtensionProvider("x", "jabber:x:data", new DataFormProvider()); - // MUC User - pm.addExtensionProvider("x", "http://jabber.org/protocol/muc#user", new MUCUserProvider()); - // MUC Admin - pm.addIQProvider("query", "http://jabber.org/protocol/muc#admin", new MUCAdminProvider()); - // MUC Owner - pm.addIQProvider("query", "http://jabber.org/protocol/muc#owner", new MUCOwnerProvider()); - // Version - try { - pm.addIQProvider("query", "jabber:iq:version", Class.forName("org.jivesoftware.smackx.packet.Version")); - } catch (ClassNotFoundException e) { - // Not sure what's happening here. - Log.w("TestClient", "Can't load class for org.jivesoftware.smackx.packet.Version"); - } - // VCard - pm.addIQProvider("vCard", "vcard-temp", new VCardProvider()); - // Offline Message Requests - pm.addIQProvider("offline", "http://jabber.org/protocol/offline", new OfflineMessageRequest.Provider()); - // Offline Message Indicator - pm.addExtensionProvider("offline", "http://jabber.org/protocol/offline", new OfflineMessageInfo.Provider()); - // Last Activity - pm.addIQProvider("query", "jabber:iq:last", new LastActivity.Provider()); - // User Search - pm.addIQProvider("query", "jabber:iq:search", new UserSearch.Provider()); - // SharedGroupsInfo - pm.addIQProvider("sharedgroup", "http://www.jivesoftware.org/protocol/sharedgroup", - new SharedGroupsInfo.Provider()); - // JEP-33: Extended Stanza Addressing - pm.addExtensionProvider("addresses", "http://jabber.org/protocol/address", new MultipleAddressesProvider()); - // FileTransfer - pm.addIQProvider("si", "http://jabber.org/protocol/si", new StreamInitiationProvider()); - pm.addIQProvider("query", "http://jabber.org/protocol/bytestreams", new BytestreamsProvider()); - pm.addIQProvider("open", "http://jabber.org/protocol/ibb", new IBBProviders.Open()); - pm.addIQProvider("close", "http://jabber.org/protocol/ibb", new IBBProviders.Close()); - pm.addExtensionProvider("data", "http://jabber.org/protocol/ibb", new IBBProviders.Data()); - - pm.addIQProvider("command", COMMAND_NAMESPACE, new AdHocCommandDataProvider()); - pm.addExtensionProvider("malformed-action", COMMAND_NAMESPACE, - new AdHocCommandDataProvider.MalformedActionError()); - pm.addExtensionProvider("bad-locale", COMMAND_NAMESPACE, - new AdHocCommandDataProvider.BadLocaleError()); - pm.addExtensionProvider("bad-payload", COMMAND_NAMESPACE, - new AdHocCommandDataProvider.BadPayloadError()); - pm.addExtensionProvider("bad-sessionid", COMMAND_NAMESPACE, - new AdHocCommandDataProvider.BadSessionIDError()); - pm.addExtensionProvider("session-expired", COMMAND_NAMESPACE, - new AdHocCommandDataProvider.SessionExpiredError()); + * // Private Data Storage pm.addIQProvider("query", "jabber:iq:private", new + * PrivateDataManager.PrivateDataIQProvider()); // Time try { pm.addIQProvider("query", "jabber:iq:time", + * Class.forName("org.jivesoftware.smackx.packet.Time")); } catch (ClassNotFoundException e) { + * Log.w("TestClient", "Can't load class for org.jivesoftware.smackx.packet.Time"); } // Roster Exchange + * pm.addExtensionProvider("x", "jabber:x:roster", new RosterExchangeProvider()); // Message Events + * pm.addExtensionProvider("x", "jabber:x:event", new MessageEventProvider()); // XHTML + * pm.addExtensionProvider("html", "http://jabber.org/protocol/xhtml-im", new XHTMLExtensionProvider()); // + * Group Chat Invitations pm.addExtensionProvider("x", "jabber:x:conference", new + * GroupChatInvitation.Provider()); // Data Forms pm.addExtensionProvider("x", "jabber:x:data", new + * DataFormProvider()); // MUC User pm.addExtensionProvider("x", "http://jabber.org/protocol/muc#user", new + * MUCUserProvider()); // MUC Admin pm.addIQProvider("query", "http://jabber.org/protocol/muc#admin", new + * MUCAdminProvider()); // MUC Owner pm.addIQProvider("query", "http://jabber.org/protocol/muc#owner", new + * MUCOwnerProvider()); // Version try { pm.addIQProvider("query", "jabber:iq:version", + * Class.forName("org.jivesoftware.smackx.packet.Version")); } catch (ClassNotFoundException e) { // Not sure + * what's happening here. Log.w("TestClient", "Can't load class for org.jivesoftware.smackx.packet.Version"); } + * // VCard pm.addIQProvider("vCard", "vcard-temp", new VCardProvider()); // Offline Message Requests + * pm.addIQProvider("offline", "http://jabber.org/protocol/offline", new OfflineMessageRequest.Provider()); // + * Offline Message Indicator pm.addExtensionProvider("offline", "http://jabber.org/protocol/offline", new + * OfflineMessageInfo.Provider()); // Last Activity pm.addIQProvider("query", "jabber:iq:last", new + * LastActivity.Provider()); // User Search pm.addIQProvider("query", "jabber:iq:search", new + * UserSearch.Provider()); // SharedGroupsInfo pm.addIQProvider("sharedgroup", + * "http://www.jivesoftware.org/protocol/sharedgroup", new SharedGroupsInfo.Provider()); // JEP-33: Extended + * Stanza Addressing pm.addExtensionProvider("addresses", "http://jabber.org/protocol/address", new + * MultipleAddressesProvider()); // FileTransfer pm.addIQProvider("si", "http://jabber.org/protocol/si", new + * StreamInitiationProvider()); pm.addIQProvider("query", "http://jabber.org/protocol/bytestreams", new + * BytestreamsProvider()); pm.addIQProvider("open", "http://jabber.org/protocol/ibb", new IBBProviders.Open()); + * pm.addIQProvider("close", "http://jabber.org/protocol/ibb", new IBBProviders.Close()); + * pm.addExtensionProvider("data", "http://jabber.org/protocol/ibb", new IBBProviders.Data()); + * pm.addIQProvider("command", COMMAND_NAMESPACE, new AdHocCommandDataProvider()); + * pm.addExtensionProvider("malformed-action", COMMAND_NAMESPACE, new + * AdHocCommandDataProvider.MalformedActionError()); pm.addExtensionProvider("bad-locale", COMMAND_NAMESPACE, + * new AdHocCommandDataProvider.BadLocaleError()); pm.addExtensionProvider("bad-payload", COMMAND_NAMESPACE, new + * AdHocCommandDataProvider.BadPayloadError()); pm.addExtensionProvider("bad-sessionid", COMMAND_NAMESPACE, new + * AdHocCommandDataProvider.BadSessionIDError()); pm.addExtensionProvider("session-expired", COMMAND_NAMESPACE, + * new AdHocCommandDataProvider.SessionExpiredError()); */ } @@ -490,7 +456,7 @@ mOldStatus = mConnection.getPreviousStatus(); if (mConnection.isAuthentificated()) mConnection.changeStatus(Status.CONTACT_STATUS_AWAY, - mSettings.getString(BeemApplication.AUTO_AWAY_MSG_KEY, "Away")); + mSettings.getString(BeemApplication.AUTO_AWAY_MSG_KEY, "Away")); } else if (intentAction.equals(Intent.ACTION_SCREEN_ON)) { if (mConnection.isAuthentificated()) mConnection.changeStatus(mOldMode, mOldStatus); @@ -498,4 +464,3 @@ } } } - diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/otr/BeemOtrManager.java --- a/src/com/beem/project/beem/otr/BeemOtrManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/otr/BeemOtrManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -44,6 +44,7 @@ import android.util.Log; import com.beem.project.beem.service.ChatAdapter; + /** * BeemOtrManager. */ @@ -54,7 +55,6 @@ //We will have a global policy for Beem as long as we won't need to modify the policy per chat. private static final OtrPolicy mGlobalPolicy = new OtrPolicyImpl(OtrPolicy.ALLOW_V2 | OtrPolicy.ERROR_START_AKE); - private OtrEngine mOtrEngine; private OtrKeyManagerImpl mOtrKeyManager; @@ -82,7 +82,6 @@ return mOtrEngine; } - /** * BeemOtrManager.getInstance. * @return BeemOtrManager @@ -94,7 +93,8 @@ } /** - * We must call addChat before stating a new otr session because we will need the chat instance for message injection. + * We must call addChat before stating a new otr session because we will need the chat instance for message + * injection. * @param sessionID the otr sessionID. * @param chat instance. */ @@ -115,6 +115,14 @@ return mOtrKeyManager.getRemoteFingerprint(sessionID); } + public void verifyRemoteFingerprint(final SessionID sessionId) { + mOtrKeyManager.verify(sessionId); + } + + public void unverifyRemoteFingerprint(final SessionID sessionId) { + mOtrKeyManager.unverify(sessionId); + } + public String getLocalFingerprint(final SessionID sessionID) { return mOtrKeyManager.getLocalFingerprint(sessionID); } @@ -141,13 +149,13 @@ } @Override - public KeyPair getKeyPair(SessionID sessionID) { + public KeyPair getKeyPair(SessionID sessionID) { KeyPair kp = mOtrKeyManager.loadLocalKeyPair(sessionID); - if(kp != null) + if (kp != null) return kp; - - mOtrKeyManager.generateLocalKeyPair(sessionID); + + mOtrKeyManager.generateLocalKeyPair(sessionID); return mOtrKeyManager.loadLocalKeyPair(sessionID); } @@ -162,8 +170,16 @@ if (mOtrKeyManager.loadRemotePublicKey(sessionID) == null) { mOtrKeyManager.savePublicKey(sessionID, mOtrEngine.getRemotePublicKey(sessionID)); } - mChats.get(sessionID).otrStateChanged(mOtrEngine.getSessionStatus(sessionID).toString()); - if(mOtrEngine.getSessionStatus(sessionID) == SessionStatus.FINISHED) { + + SessionStatus status = mOtrEngine.getSessionStatus(sessionID); + + if (status.equals(SessionStatus.ENCRYPTED)) { + if (mOtrKeyManager.isVerified(sessionID)) { + mChats.get(sessionID).otrStateChanged("AUTHENTICATED"); + } else + mChats.get(sessionID).otrStateChanged(status.toString()); + } + if (mOtrEngine.getSessionStatus(sessionID) == SessionStatus.FINISHED) { try { mChats.get(sessionID).localEndOtrSession(); } catch (OtrException e) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/package-info.java --- a/src/com/beem/project/beem/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains BEEM's entry points. diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/providers/AvatarProvider.java --- a/src/com/beem/project/beem/providers/AvatarProvider.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/providers/AvatarProvider.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.providers; import android.content.ContentProvider; @@ -58,13 +58,11 @@ /** * A simple content provider we expose the differents avatar downloaded. - * */ public class AvatarProvider extends ContentProvider { /** The content uri of this provider. */ - public static final Uri CONTENT_URI = - Uri.parse("content://com.beem.project.beem.providers.avatarprovider"); + public static final Uri CONTENT_URI = Uri.parse("content://com.beem.project.beem.providers.avatarprovider"); private static final String TAG = AvatarProvider.class.getSimpleName(); private static final String AUTHORITY = "com.beem.project.beem.providers.avatarprovider"; @@ -78,17 +76,16 @@ String ID = "_id"; } - private static String[] columnNames = new String[] {Columns.ID }; + private static String[] columnNames = new String[] { Columns.ID }; private static final int AVATAR = 1; private static final int AVATAR_ID = 2; private static final UriMatcher URIMATCHER = new UriMatcher(AVATAR); - static - { - URIMATCHER.addURI(AUTHORITY, "*", AVATAR_ID); + static { + URIMATCHER.addURI(AUTHORITY, "*", AVATAR_ID); // should not be needed if we pass AVATAR on the constructor but it does not work - URIMATCHER.addURI(AUTHORITY, null, AVATAR); + URIMATCHER.addURI(AUTHORITY, null, AVATAR); } private String mDataPath; @@ -101,7 +98,6 @@ /** * Translate the mode passed to {@link #openFile} into mode passed to {@link ParcelFileDescriptor#open}. - * * @param uri the uri to open * @param mode the mode * @return the mode @@ -112,23 +108,18 @@ if ("r".equals(mode)) { modeBits = ParcelFileDescriptor.MODE_READ_ONLY; } else if ("w".equals(mode) || "wt".equals(mode)) { - modeBits = ParcelFileDescriptor.MODE_WRITE_ONLY - | ParcelFileDescriptor.MODE_CREATE + modeBits = ParcelFileDescriptor.MODE_WRITE_ONLY | ParcelFileDescriptor.MODE_CREATE | ParcelFileDescriptor.MODE_TRUNCATE; } else if ("wa".equals(mode)) { - modeBits = ParcelFileDescriptor.MODE_WRITE_ONLY - | ParcelFileDescriptor.MODE_CREATE + modeBits = ParcelFileDescriptor.MODE_WRITE_ONLY | ParcelFileDescriptor.MODE_CREATE | ParcelFileDescriptor.MODE_APPEND; } else if ("rw".equals(mode)) { - modeBits = ParcelFileDescriptor.MODE_READ_WRITE - | ParcelFileDescriptor.MODE_CREATE; + modeBits = ParcelFileDescriptor.MODE_READ_WRITE | ParcelFileDescriptor.MODE_CREATE; } else if ("rwt".equals(mode)) { - modeBits = ParcelFileDescriptor.MODE_READ_WRITE - | ParcelFileDescriptor.MODE_CREATE + modeBits = ParcelFileDescriptor.MODE_READ_WRITE | ParcelFileDescriptor.MODE_CREATE | ParcelFileDescriptor.MODE_TRUNCATE; } else { - throw new FileNotFoundException("Bad mode for " + uri + ": " - + mode); + throw new FileNotFoundException("Bad mode for " + uri + ": " + mode); } return modeBits; } @@ -143,8 +134,7 @@ } @Override - public ParcelFileDescriptor openFile(Uri uri, String mode) - throws FileNotFoundException { + public ParcelFileDescriptor openFile(Uri uri, String mode) throws FileNotFoundException { String id = uri.getPath(); File data = new File(mDataPath, id); int modeBits = AvatarProvider.modeToMode(uri, mode); @@ -168,7 +158,7 @@ String id = uri.getPathSegments().get(0); File f = new File(mDataPath, id); if (f.exists()) - c.newRow().add(f.getName()); + c.newRow().add(f.getName()); break; default: Log.w(TAG, "Unsupported uri for query match = " + match); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/providers/package-info.java --- a/src/com/beem/project/beem/providers/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/providers/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,10 +40,10 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ - + */ /** * ContentProviders for Beem. */ package com.beem.project.beem.providers; + diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/BeemAvatarCache.java --- a/src/com/beem/project/beem/service/BeemAvatarCache.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/BeemAvatarCache.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import android.content.ContentResolver; @@ -72,7 +72,6 @@ /** * Create a BeemAvatarCache. - * * @param ctx The android context of the cache. */ public BeemAvatarCache(final Context ctx) { @@ -80,7 +79,6 @@ mContentResolver = mContext.getContentResolver(); } - @Override public void put(String key, byte[] data) throws IOException { Uri uri = AvatarProvider.CONTENT_URI.buildUpon().appendPath(key).build(); @@ -100,7 +98,7 @@ byte[] data = new byte[1024]; int nbread; while ((nbread = in.read(data)) != -1) - os.write(data, 0, nbread); + os.write(data, 0, nbread); } finally { in.close(); os.close(); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/BeemAvatarManager.java --- a/src/com/beem/project/beem/service/BeemAvatarManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/BeemAvatarManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; @@ -61,8 +61,7 @@ import org.jivesoftware.smack.Connection; /** - * An AvatarManager for Beem. - * It allows to publish avatar on the Android platform. + * An AvatarManager for Beem. It allows to publish avatar on the Android platform. */ public class BeemAvatarManager extends AvatarManager { private static final String TAG = BeemAvatarManager.class.getSimpleName(); @@ -72,7 +71,6 @@ /** * Create a BeemAvatarManager. - * * @param ctx the Android context * @param con the connection * @param pepMgr the PepSubManager of the connection @@ -80,14 +78,13 @@ * @param autoDownload tre to enable auto download of avatars */ public BeemAvatarManager(final Context ctx, final Connection con, final PepSubManager pepMgr, - final AvatarCache cache, final boolean autoDownload) { + final AvatarCache cache, final boolean autoDownload) { super(con, pepMgr, cache, autoDownload); mContext = ctx; } /** * Publish an avatar. - * * @param avatarUri the uri of the avatar * @return true if the avatar was successfully published */ @@ -102,9 +99,7 @@ } /** - * Publish an avatar. - * This will send the XMPP stanza to enable the publication of an avatar. - * + * Publish an avatar. This will send the XMPP stanza to enable the publication of an avatar. * @param bitmap the avatar to publish * @return true on success false otherwise */ @@ -127,7 +122,6 @@ /** * Send this bitmap to the avatar data node of the pep server. - * * @param bmp the avatar bitmap * @param format the image format to publish this data * @param quality the compression quality use for JPEG compression @@ -153,7 +147,6 @@ /** * Convert the bitmap to a byte array. - * * @param bitmap the avatar bitmap * @param format the resulting image format * @param quality the compression quality use for JPEG compression diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/BeemCapsManager.java --- a/src/com/beem/project/beem/service/BeemCapsManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/BeemCapsManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import org.jivesoftware.smack.Connection; @@ -79,7 +79,6 @@ /** * Create a BeemCapsManager. - * * @param sdm the ServiceDiscoveryManager to use * @param conn the connection to use * @param context the Android context to use to store data @@ -90,7 +89,6 @@ initCacheDirectory(); } - @Override protected DiscoverInfo load(String ver) { File fver = new File(mCacheDir, ver); @@ -101,7 +99,7 @@ mParser = makeParser(); mParser.setInput(fr); return (DiscoverInfo) PacketParserUtils.parsePacketExtension("query", - "http://jabber.org/protocol/disco#info", mParser); + "http://jabber.org/protocol/disco#info", mParser); } finally { fr.close(); @@ -119,7 +117,7 @@ try { Writer fw = new BufferedWriter(new FileWriter(fver)); try { - String data = info.toXML(); + String data = info.toXML(); fw.write(data, 0, data.length()); } finally { fw.close(); @@ -150,7 +148,6 @@ /** * Make an Xml parser. - * * @return the created xml parser. * @throws XmlPullParserException if an error occurs while creating the parser. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/BeemChatManager.java --- a/src/com/beem/project/beem/service/BeemChatManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/BeemChatManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import java.io.File; @@ -81,8 +81,7 @@ private final ChatManager mAdaptee; private final Map mChats = new HashMap(); private final ChatListener mChatListener = new ChatListener(); - private final RemoteCallbackList mRemoteChatCreationListeners = - new RemoteCallbackList(); + private final RemoteCallbackList mRemoteChatCreationListeners = new RemoteCallbackList(); private final BeemService mService; /** @@ -178,7 +177,8 @@ BeemApplication.ACCOUNT_USERNAME_KEY, ""); String historyPath = PreferenceManager.getDefaultSharedPreferences(mService.getBaseContext()).getString( BeemApplication.CHAT_HISTORY_KEY, ""); - if ("".equals(historyPath)) historyPath = "/Android/data/com.beem.project.beem/chat/"; + if ("".equals(historyPath)) + historyPath = "/Android/data/com.beem.project.beem/chat/"; res.setHistory(history); res.setAccountUser(accountUser); res.listenOtrSession(); @@ -287,8 +287,8 @@ try { CharSequence tickerText = mService.getBind().getRoster().getContact(chat.getParticipant().getJID()) .getName(); - Notification notification = new Notification(android.R.drawable.stat_notify_chat, tickerText, System - .currentTimeMillis()); + Notification notification = new Notification(android.R.drawable.stat_notify_chat, tickerText, + System.currentTimeMillis()); notification.flags = Notification.FLAG_AUTO_CANCEL; notification.setLatestEventInfo(mService, tickerText, msgBody, makeChatIntent(chat)); mService.sendNotification(chat.getParticipant().getJID().hashCode(), notification); @@ -316,11 +316,12 @@ } @Override - public void stateChanged(final IChat chat) { } + public void stateChanged(final IChat chat) { + } @Override public void otrStateChanged(String otrState) throws RemoteException { - // TODO Auto-generated method stub + // TODO Auto-generated method stub } } diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/ChatAdapter.java --- a/src/com/beem/project/beem/service/ChatAdapter.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/ChatAdapter.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import java.io.File; @@ -141,7 +141,6 @@ otrBody = msgBody; } - send.setThread(message.getThread()); send.setSubject(message.getSubject()); send.setType(org.jivesoftware.smack.packet.Message.Type.chat); @@ -188,7 +187,6 @@ } } - /** * {@inheritDoc} */ @@ -268,7 +266,7 @@ try { FileWriter file = new FileWriter(filepath, true); String log = msg.getTimestamp() + " " + contactName + " " + msg.getBody() - + System.getProperty("line.separator"); + + System.getProperty("line.separator"); file.write(log); file.close(); } catch (IOException e) { @@ -331,18 +329,20 @@ /** * Constructor. */ - public MsgListener() { } + public MsgListener() { + } @Override public void processMessage(Chat chat, org.jivesoftware.smack.packet.Message message) { - Message msg = new Message(message); + Message msg = new Message(message); Log.d(TAG, "new msg " + msg.getBody()); String body; if (mOtrSessionId != null) { try { - body = BeemOtrManager.getInstance().getOtrManager().transformReceiving(mOtrSessionId, msg.getBody()); + body = BeemOtrManager.getInstance().getOtrManager() + .transformReceiving(mOtrSessionId, msg.getBody()); msg.setBody(body); } catch (OtrException e) { e.printStackTrace(); @@ -383,8 +383,8 @@ mRemoteListeners.finishBroadcast(); } + } - } /** * This method is executed when the otr session status change. * @param otrState the new state of otr session. @@ -403,14 +403,13 @@ mRemoteListeners.finishBroadcast(); } - @Override public void startOtrSession() throws RemoteException { if (mOtrSessionId == null) { - mOtrSessionId = new SessionID(mAccountUser, mParticipant.getJIDWithRes(), PROTOCOL); - BeemOtrManager.getInstance().addChat(mOtrSessionId, this); + mOtrSessionId = new SessionID(mAccountUser, mParticipant.getJIDWithRes(), PROTOCOL); + BeemOtrManager.getInstance().addChat(mOtrSessionId, this); } - + try { BeemOtrManager.getInstance().getOtrManager().startSession(mOtrSessionId); } catch (OtrException e) { @@ -423,7 +422,7 @@ @Override public void endOtrSession() throws RemoteException { try { - localEndOtrSession(); + localEndOtrSession(); } catch (OtrException e) { e.printStackTrace(); throw new RemoteException(); @@ -441,10 +440,11 @@ BeemOtrManager.getInstance().getOtrManager().endSession(mOtrSessionId); BeemOtrManager.getInstance().removeChat(mOtrSessionId); mOtrSessionId = null; + listenOtrSession(); return true; } - public void listenOtrSession(){ + public void listenOtrSession() { if (mOtrSessionId != null) return; @@ -470,11 +470,22 @@ return BeemOtrManager.getInstance().getRemoteFingerprint(mOtrSessionId); } - @Override - public String getOtrStatus() throws RemoteException { - if (mOtrSessionId == null) - return null; - return BeemOtrManager.getInstance().getOtrManager().getSessionStatus(mOtrSessionId).toString(); + @Override + public void verifyRemoteFingerprint(boolean ok) { + if (mOtrSessionId != null) { + if (ok) + BeemOtrManager.getInstance().verifyRemoteFingerprint(mOtrSessionId); + else + BeemOtrManager.getInstance().unverifyRemoteFingerprint(mOtrSessionId); + } + + } + + @Override + public String getOtrStatus() throws RemoteException { + if (mOtrSessionId == null) + return null; + return BeemOtrManager.getInstance().getOtrManager().getSessionStatus(mOtrSessionId).toString(); + } } - diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/Contact.java --- a/src/com/beem/project/beem/service/Contact.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/Contact.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import java.util.ArrayList; @@ -141,7 +141,6 @@ /** * Make an xmpp uri for a spcific jid. - * * @param jid the jid to represent as an uri * @return an uri representing this jid. */ @@ -285,7 +284,6 @@ /** * Get the avatar id of the contact. - * * @return the avatar id or null if there is not */ public String getAvatarId() { @@ -322,7 +320,6 @@ /** * Set the avatar id of the contact. - * * @param avatarId the avatar id */ public void setAvatarId(String avatarId) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/LoginAsyncTask.java --- a/src/com/beem/project/beem/service/LoginAsyncTask.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/LoginAsyncTask.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import android.os.AsyncTask; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/Message.java --- a/src/com/beem/project/beem/service/Message.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/Message.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import org.jivesoftware.smack.packet.XMPPError; @@ -291,7 +291,6 @@ /** * Set the Date of the message. - * * @param date date of the message. */ public void setTimestamp(Date date) { @@ -300,7 +299,6 @@ /** * Get the Date of the message. - * * @return if it is a delayed message get the date the message was sended. */ public Date getTimestamp() { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/PresenceAdapter.java --- a/src/com/beem/project/beem/service/PresenceAdapter.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/PresenceAdapter.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import org.jivesoftware.smack.packet.Presence; @@ -101,7 +101,8 @@ mStatusText = presence.getStatus(); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.os.Parcelable#describeContents() */ @Override @@ -190,7 +191,8 @@ this.mType = type; } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.os.Parcelable#writeToParcel(android.os.Parcel, int) */ @Override diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/PrivacyListItem.java --- a/src/com/beem/project/beem/service/PrivacyListItem.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/PrivacyListItem.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import android.os.Parcel; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/PrivacyListManagerAdapter.java --- a/src/com/beem/project/beem/service/PrivacyListManagerAdapter.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/PrivacyListManagerAdapter.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import java.util.ArrayList; @@ -71,8 +71,7 @@ private final PrivacyListManager mPrivacyListManager; - private final RemoteCallbackList mPrivacyListListeners = - new RemoteCallbackList(); + private final RemoteCallbackList mPrivacyListListeners = new RemoteCallbackList(); private final PrivacyListListenerAdapter mPrivacyListListener = new PrivacyListListenerAdapter(); /** @@ -84,14 +83,16 @@ mPrivacyListManager.addListener(mPrivacyListListener); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#blockUser(java.lang.String, java.lang.String) */ @Override public void blockUser(String listName, String jid) throws RemoteException { } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#createPrivacyList(java.lang.String, java.util.List) */ @Override @@ -111,7 +112,8 @@ Log.d(TAG, "END createPrivacyList."); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#declineActivePrivacyList() */ @Override @@ -123,7 +125,8 @@ } } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#declineDefaultPrivacyList() */ @Override @@ -135,7 +138,8 @@ } } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#editPrivacyList(java.lang.String, java.util.List) */ @Override @@ -149,7 +153,8 @@ Log.d(TAG, "END editPrivacyList."); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#getActivePrivacyList() */ @Override @@ -163,7 +168,8 @@ return null; } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#getBlockedGroupsByList(java.lang.String) */ @Override @@ -181,7 +187,8 @@ return blockedGroups; } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#getBlockedUsersByList(java.lang.String) */ @Override @@ -199,7 +206,8 @@ return blockedUsers; } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#getDefaultPrivacyList() */ @Override @@ -213,7 +221,8 @@ return null; } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#removePrivacyList(java.lang.String) */ @Override @@ -225,7 +234,8 @@ } } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#setActivePrivacyList(java.lang.String) */ @Override @@ -237,7 +247,8 @@ } } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#setDefaultPrivacyList(java.lang.String) */ @Override @@ -287,7 +298,8 @@ /** * Constructor. */ - public PrivacyListListenerAdapter() { } + public PrivacyListListenerAdapter() { + } @Override public void setPrivacyList(final String listName, final List listItem) { @@ -333,7 +345,8 @@ mPrivacyListListeners.unregister(listener); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IPrivacyListManager#getPrivacyLists() */ @Override diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/RosterAdapter.java --- a/src/com/beem/project/beem/service/RosterAdapter.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/RosterAdapter.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import java.util.ArrayList; @@ -77,8 +77,7 @@ private static final String TAG = "RosterAdapter"; private final Roster mAdaptee; - private final RemoteCallbackList mRemoteRosListeners = - new RemoteCallbackList(); + private final RemoteCallbackList mRemoteRosListeners = new RemoteCallbackList(); private final Map mDefaultStatusMessages; private final RosterListenerAdapter mRosterListener = new RosterListenerAdapter(); private Map mAvatarIdmap = new HashMap(); @@ -110,7 +109,6 @@ mAvatarManager.addAvatarListener(new AvatarEventListener()); } - /** * {@inheritDoc} */ @@ -212,7 +210,8 @@ mAdaptee.getEntry(jid).setName(name); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IRoster#getPresence(java.lang.String) */ @Override @@ -220,7 +219,8 @@ return new PresenceAdapter(mAdaptee.getPresence(jid)); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IRoster#addContactToGroup(java.lang.String, java.lang.String) */ @Override @@ -234,7 +234,8 @@ } } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IRoster#removeContactFromGroup(java.lang.String, java.lang.String) */ @Override @@ -283,14 +284,14 @@ */ private Map createDefaultStatusMessagesMap(Context context) { Map defaultStatusMessages = new HashMap(); - defaultStatusMessages.put(Status.CONTACT_STATUS_AVAILABLE, context - .getString(R.string.contact_status_msg_available)); - defaultStatusMessages.put(Status.CONTACT_STATUS_AVAILABLE_FOR_CHAT, context - .getString(R.string.contact_status_msg_available_chat)); + defaultStatusMessages.put(Status.CONTACT_STATUS_AVAILABLE, + context.getString(R.string.contact_status_msg_available)); + defaultStatusMessages.put(Status.CONTACT_STATUS_AVAILABLE_FOR_CHAT, + context.getString(R.string.contact_status_msg_available_chat)); defaultStatusMessages.put(Status.CONTACT_STATUS_AWAY, context.getString(R.string.contact_status_msg_away)); defaultStatusMessages.put(Status.CONTACT_STATUS_BUSY, context.getString(R.string.contact_status_msg_dnd)); - defaultStatusMessages.put(Status.CONTACT_STATUS_DISCONNECT, context - .getString(R.string.contact_status_msg_offline)); + defaultStatusMessages.put(Status.CONTACT_STATUS_DISCONNECT, + context.getString(R.string.contact_status_msg_offline)); defaultStatusMessages.put(Status.CONTACT_STATUS_UNAVAILABLE, context.getString(R.string.contact_status_msg_xa)); return defaultStatusMessages; @@ -393,14 +394,14 @@ /** * Listener on avatar metadata event. - * */ private class AvatarEventListener implements AvatarListener { /** * Constructor. */ - public AvatarEventListener() { } + public AvatarEventListener() { + } @Override public void onAvatarChange(String from, String avatarId, List avatarInfos) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/UserInfo.java --- a/src/com/beem/project/beem/service/UserInfo.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/UserInfo.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,16 +40,14 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import android.os.Parcel; import android.os.Parcelable; /** - * This class contains information about the user of the connection. - * These informations are sent by the connection. - * + * This class contains information about the user of the connection. These informations are sent by the connection. */ public class UserInfo implements Parcelable { @@ -101,7 +99,6 @@ /** * Get the avatar id of the user. - * * @return the avatar id */ public String getAvatarId() { @@ -110,7 +107,6 @@ /** * Set the avater id of the user. - * * @param avatarId the avatar id */ public void setAvatarId(String avatarId) { @@ -119,7 +115,6 @@ /** * Get the full jid of the user. - * * @return the jid */ public String getJid() { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/XmppConnectionAdapter.java --- a/src/com/beem/project/beem/service/XmppConnectionAdapter.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/XmppConnectionAdapter.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import org.jivesoftware.smack.ConnectionConfiguration; @@ -116,8 +116,7 @@ private BeemAvatarManager mAvatarManager; private PepSubManager mPepManager; private SharedPreferences mPref; - private final RemoteCallbackList mRemoteConnListeners = - new RemoteCallbackList(); + private final RemoteCallbackList mRemoteConnListeners = new RemoteCallbackList(); private final SubscribePacketListener mSubscribePacketListener = new SubscribePacketListener(); private final ConnexionListenerAdapter mConListener = new ConnexionListenerAdapter(); @@ -132,8 +131,8 @@ * @param password password to use on connect * @param service the background service associated with the connection. */ - public XmppConnectionAdapter(final ConnectionConfiguration config, - final String login, final String password, final BeemService service) { + public XmppConnectionAdapter(final ConnectionConfiguration config, final String login, final String password, + final BeemService service) { this(new XMPPConnection(config), login, password, service); } @@ -144,8 +143,8 @@ * @param password password to use on connect * @param service the background service associated with the connection. */ - public XmppConnectionAdapter(final String serviceName, - final String login, final String password, final BeemService service) { + public XmppConnectionAdapter(final String serviceName, final String login, final String password, + final BeemService service) { this(new XMPPConnection(serviceName), login, password, service); } @@ -156,8 +155,8 @@ * @param password The password to use * @param service the background service associated with the connection. */ - public XmppConnectionAdapter(final XMPPConnection con, - final String login, final String password, final BeemService service) { + public XmppConnectionAdapter(final XMPPConnection con, final String login, final String password, + final BeemService service) { mAdaptee = con; PrivacyListManager.getInstanceFor(mAdaptee); mLogin = login; @@ -199,8 +198,8 @@ try { //TODO NIKITA DOES SOME SHIT !!! Fix this monstruosity String str = mService.getResources().getString( - mService.getResources().getIdentifier( - e.getXMPPError().getCondition().replace("-", "_"), "string", "com.beem.project.beem")); + mService.getResources().getIdentifier(e.getXMPPError().getCondition().replace("-", "_"), + "string", "com.beem.project.beem")); mErrorMsg = str; } catch (NullPointerException e2) { if (!"".equals(e.getMessage())) @@ -334,7 +333,6 @@ /** * Get the AvatarManager of this connection. - * * @return the AvatarManager or null if there is not */ public BeemAvatarManager getAvatarManager() { @@ -363,13 +361,13 @@ */ private void updateNotification(String text) { Notification mStatusNotification; - mStatusNotification = new Notification(com.beem.project.beem.R.drawable.beem_status_icon, text, System - .currentTimeMillis()); + mStatusNotification = new Notification(com.beem.project.beem.R.drawable.beem_status_icon, text, + System.currentTimeMillis()); mStatusNotification.defaults = Notification.DEFAULT_LIGHTS; mStatusNotification.flags = Notification.FLAG_NO_CLEAR | Notification.FLAG_ONGOING_EVENT; - mStatusNotification.setLatestEventInfo(mService, "Beem Status", text, PendingIntent.getActivity(mService, 0, - new Intent(mService, ChangeStatus.class), 0)); + mStatusNotification.setLatestEventInfo(mService, "Beem Status", text, + PendingIntent.getActivity(mService, 0, new Intent(mService, ChangeStatus.class), 0)); // bypass the preferences for notification mService.getNotificationManager().notify(BeemService.NOTIFICATION_STATUS_ID, mStatusNotification); } @@ -416,7 +414,6 @@ /** * Get the user informations. - * * @return the user infos */ public UserInfo getUserInfo() { @@ -670,11 +667,10 @@ R.string.AcceptContactRequest, from), System.currentTimeMillis()); notif.flags = Notification.FLAG_AUTO_CANCEL; Intent intent = new Intent(mService, Subscription.class); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - .putExtra("from", from); - notif.setLatestEventInfo(mService, from, mService - .getString(R.string.AcceptContactRequestFrom, from), PendingIntent.getActivity(mService, 0, - intent, PendingIntent.FLAG_ONE_SHOT)); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK).putExtra("from", from); + notif.setLatestEventInfo(mService, from, + mService.getString(R.string.AcceptContactRequestFrom, from), + PendingIntent.getActivity(mService, 0, intent, PendingIntent.FLAG_ONE_SHOT)); int id = packet.hashCode(); mService.sendNotification(id, notif); } @@ -722,9 +718,9 @@ notification.flags = Notification.FLAG_AUTO_CANCEL; Intent intent = new Intent(mService, Subscription.class); intent.setData(Contact.makeXmppUri(from)); - notification.setLatestEventInfo(mService, from, mService - .getString(R.string.AcceptContactRequestFrom, from), PendingIntent.getActivity(mService, 0, - intent, PendingIntent.FLAG_ONE_SHOT)); + notification.setLatestEventInfo(mService, from, + mService.getString(R.string.AcceptContactRequestFrom, from), + PendingIntent.getActivity(mService, 0, intent, PendingIntent.FLAG_ONE_SHOT)); int id = p.hashCode(); mService.sendNotification(id, notification); } diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/XmppFacade.java --- a/src/com/beem/project/beem/service/XmppFacade.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/XmppFacade.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.service; import org.jivesoftware.smack.packet.Presence; @@ -142,7 +142,8 @@ mConnexion.getAdaptee().sendPacket(presence2); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see com.beem.project.beem.service.aidl.IXmppFacade#call(java.lang.String) */ @Override diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/aidl/IChat.aidl --- a/src/com/beem/project/beem/service/aidl/IChat.aidl Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/aidl/IChat.aidl Tue Aug 23 01:12:26 2011 +0200 @@ -107,6 +107,9 @@ */ String getRemoteOtrFingerprint(); + void verifyRemoteFingerprint(in boolean ok); + + /** * get current OTR status. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/service/package-info.java --- a/src/com/beem/project/beem/service/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/service/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -39,7 +39,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains all the class use by the service. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarCache.java --- a/src/com/beem/project/beem/smack/avatar/AvatarCache.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarCache.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,22 +40,19 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.io.IOException; import java.io.InputStream; /** - * Interface for an AvatarCache. - * This can be improved to a generic cache. - * + * Interface for an AvatarCache. This can be improved to a generic cache. */ public interface AvatarCache { /** * Put some datas in cache. - * * @param id the key id of the data * @param data the datato cache * @throws IOException if an IO error occurs while caching the data @@ -64,7 +61,6 @@ /** * Put some datas in cache. - * * @param id the key id of the data * @param data an InputStream to the data to cache * @throws IOException if an IO error occurs while caching the data @@ -73,16 +69,14 @@ /** * Get some data from the cache. - * * @param id the id of the data to get * @return the cached data - * @throws IOException if an IO error occurs while geting the data + * @throws IOException if an IO error occurs while geting the data */ byte[] get(String id) throws IOException; /** * Test if a data is in cache. - * * @param id the id of the data * @return true if data is in cache false otherwise */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarExtension.java --- a/src/com/beem/project/beem/smack/avatar/AvatarExtension.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarExtension.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,16 +40,14 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import org.jivesoftware.smack.util.Base64; import org.jivesoftware.smack.packet.PacketExtension; /** - * PacketExtension to represent the Avatar data. - * XML namespace urn:xmpp:avatar:data - * + * PacketExtension to represent the Avatar data. XML namespace urn:xmpp:avatar:data */ public class AvatarExtension implements PacketExtension { @@ -73,7 +71,6 @@ /** * Get the avatar data as a Base64 string. - * * @return a base64 string. */ public String getBase64() { @@ -82,7 +79,6 @@ /** * Get the avatar data. - * * @return the decoded data */ public byte[] getData() { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarListener.java --- a/src/com/beem/project/beem/smack/avatar/AvatarListener.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarListener.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.util.List; @@ -48,13 +48,11 @@ /** * A listener for avatar changes event. - * */ public interface AvatarListener { /** * Event which is fired when a contact change avatar. - * * @param from the contact who change his avatar * @param avatarId the new avatar id, may be null if the contact set no avatar * @param avatarInfos the metadata infos of the avatar, may be empty if the contact set no avatar diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarManager.java --- a/src/com/beem/project/beem/smack/avatar/AvatarManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import com.beem.project.beem.smack.avatar.AvatarMetadataExtension.Info; @@ -62,15 +62,13 @@ import org.jivesoftware.smack.util.StringUtils; /** - * This class deals with the avatar data. - * It can be configured to auto retrieve the avatar and put it in cache. - * + * This class deals with the avatar data. It can be configured to auto retrieve the avatar and put it in cache. */ public class AvatarManager { - /** The pubsub node for avatar data. */ + /** The pubsub node for avatar data. */ public static final String AVATARDATA_NODE = "urn:xmpp:avatar:data"; - /** The pubsub node for avatar metadata. */ + /** The pubsub node for avatar metadata. */ public static final String AVATARMETADATA_NODE = "urn:xmpp:avatar:metadata"; private PepSubManager mPep; @@ -81,14 +79,13 @@ /** * Create an AvatarManager. - * * @param con the connection * @param pepMgr the PepSubManager of the Connection * @param cache the cache which will store the avatars * @param autoDownload true to enable auto download of avatars */ - public AvatarManager(final Connection con, final PepSubManager pepMgr, - final AvatarCache cache, final boolean autoDownload) { + public AvatarManager(final Connection con, final PepSubManager pepMgr, final AvatarCache cache, + final boolean autoDownload) { mCon = con; mPep = pepMgr; mAutoDownload = autoDownload; @@ -98,7 +95,6 @@ /** * Create an AvatarManager. - * * @param con the connection * @param pepMgr the PepSubManager of the Connection * @param autoDownload true to enable auto download of avatars @@ -113,7 +109,6 @@ /** * Get an avatar from the cache. - * * @param avatarId the id of the avatar * @return the avatar or null if it cannot be retrieved from the cache */ @@ -129,7 +124,6 @@ /** * Add an AvatarListener. - * * @param listener the AvatarListener to add */ public void addAvatarListener(AvatarListener listener) { @@ -139,7 +133,6 @@ /** * Remove an AvatarListener. - * * @param listener the AvatarListener to remove */ public void removeAvatarListener(AvatarListener listener) { @@ -148,7 +141,6 @@ /** * Download an avatar. - * * @param from The jid of the user * @param avatarId the id of the avatar * @param info the metadata information of the avatar to download @@ -158,7 +150,7 @@ try { AvatarRetriever retriever = AvatarRetrieverFactory.getRetriever(mCon, from, info); byte[] avatar = retriever.getAvatar(); - // TODO check the hash before store + // TODO check the hash before store mCache.put(avatarId, avatar); return true; } catch (IOException e) { @@ -178,7 +170,6 @@ /** * Send an avatar image to the pep server. - * * @param data the image data. * @return true if the image where successfully sent. false otherwise */ @@ -194,9 +185,7 @@ } /** - * Send the metadata of the avatar you want to publish. - * By sending this metadata, you publish an avatar. - * + * Send the metadata of the avatar you want to publish. By sending this metadata, you publish an avatar. * @param id the id of the metadata item * @param metadata the metadata to publish */ @@ -207,10 +196,8 @@ } /** - * Select the avatar to download. - * Subclass should override this method to take control over the selection process. + * Select the avatar to download. Subclass should override this method to take control over the selection process. * This implementation select the first element. - * * @param available list of the avatar metadata information * @return the metadata of the avatar to download */ @@ -218,10 +205,8 @@ return available.get(0); } - /** * Get the id corresponding to this avatar data. - * * @param data the avatar data * @return the id * @throws NoSuchAlgorithmException if the sha-1 algorithm is unavailable @@ -234,7 +219,6 @@ /** * Publish an avatar data. - * * @param id the id of the avatar data * @param data the data of the avatar */ @@ -247,7 +231,6 @@ /** * Fire the listeners for avatar change. - * * @param from the jid of the contact * @param avatarId the new avatar id * @param avatarInfos the metadata infos of the avatar @@ -257,7 +240,6 @@ l.onAvatarChange(from, avatarId, avatarInfos); } - /** * A listener to PEPEevent. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarMetadataExtension.java --- a/src/com/beem/project/beem/smack/avatar/AvatarMetadataExtension.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarMetadataExtension.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.util.LinkedList; @@ -49,9 +49,7 @@ import org.jivesoftware.smack.packet.PacketExtension; /** - * PacketExtension to represent the Avatar metadata. - * XML namespace urn:xmpp:avatar:metadata - * + * PacketExtension to represent the Avatar metadata. XML namespace urn:xmpp:avatar:metadata */ public class AvatarMetadataExtension implements PacketExtension { private List mInfos = new LinkedList(); @@ -64,7 +62,6 @@ /** * Get the metadata informations. - * * @return a list of informations */ public List getInfos() { @@ -73,7 +70,6 @@ /** * Add a metadate information. - * * @param info the metadata information to add */ public void addInfo(Info info) { @@ -114,7 +110,6 @@ /** * Create an Info. - * * @param id the id of the info * @param type the MIME type of the avatar * @param bytes the size of the avatar in bytes @@ -127,7 +122,6 @@ /** * Set the size of the avatar in bytes. - * * @param bytes the size */ public void setBytes(int bytes) { @@ -136,7 +130,6 @@ /** * Set the size of the avatar in bytes. - * * @return the size */ public int getBytes() { @@ -145,7 +138,6 @@ /** * Set the height. - * * @param height the height */ public void setHeight(int height) { @@ -154,7 +146,6 @@ /** * Get the height. - * * @return the height */ public int getHeight() { @@ -163,7 +154,6 @@ /** * Set the width. - * * @param width the width */ public void setWidth(int width) { @@ -172,7 +162,6 @@ /** * Get the width. - * * @return the width */ public int getWidth() { @@ -181,7 +170,6 @@ /** * Set the url. - * * @param url the url */ public void setUrl(String url) { @@ -190,7 +178,6 @@ /** * Get the url. - * * @return the url, null if no url is present */ public String getUrl() { @@ -199,7 +186,6 @@ /** * Get the id. - * * @return the id */ public String getId() { @@ -208,7 +194,6 @@ /** * Set the id. - * * @param id the id */ public void setId(String id) { @@ -217,7 +202,6 @@ /** * Set the MIME type of the avatar. - * * @param type the type */ public void setType(String type) { @@ -226,7 +210,6 @@ /** * Get the MIME type of the avatar. - * * @return the type, null if no type is present */ public String getType() { @@ -235,7 +218,6 @@ /** * Return this information as an xml element. - * * @return an xml element representing this information */ public String toXML() { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarMetadataProvider.java --- a/src/com/beem/project/beem/smack/avatar/AvatarMetadataProvider.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarMetadataProvider.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import org.jivesoftware.smack.packet.PacketExtension; @@ -48,21 +48,19 @@ import org.xmlpull.v1.XmlPullParser; /** - * A PacketExtensionProvider to parse the Avatar metadata. - * XML namespace urn:xmpp:avatar:metadata + * A PacketExtensionProvider to parse the Avatar metadata. XML namespace urn:xmpp:avatar:metadata */ public class AvatarMetadataProvider implements PacketExtensionProvider { /** - * Creates a new AvatarMetadataProvider. - * ProviderManager requires that every PacketExtensionProvider has a public, no-argument constructor + * Creates a new AvatarMetadataProvider. ProviderManager requires that every PacketExtensionProvider has a public, + * no-argument constructor */ public AvatarMetadataProvider() { } @Override - public PacketExtension parseExtension(XmlPullParser parser) - throws Exception { + public PacketExtension parseExtension(XmlPullParser parser) throws Exception { AvatarMetadataExtension metadata = new AvatarMetadataExtension(); boolean done = false; StringBuilder buffer = new StringBuilder(); @@ -80,10 +78,12 @@ try { if (sbytes != null) bytes = Integer.parseInt(sbytes); - } catch (NumberFormatException e) { } + } catch (NumberFormatException e) { + } if (bytes != 0 && id != null && type != null) info = new AvatarMetadataExtension.Info(id, type, bytes); - else // invalid info + else + // invalid info continue; String url = parser.getAttributeValue(null, "url"); @@ -97,7 +97,8 @@ width = Integer.parseInt(parser.getAttributeValue(null, "width")); info.setHeight(height); info.setWidth(width); - } catch (NumberFormatException e) { } + } catch (NumberFormatException e) { + } metadata.addInfo(info); } } else if (eventType == XmlPullParser.END_TAG) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarProvider.java --- a/src/com/beem/project/beem/smack/avatar/AvatarProvider.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarProvider.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import org.jivesoftware.smack.packet.PacketExtension; @@ -48,21 +48,19 @@ import org.xmlpull.v1.XmlPullParser; /** - * A PacketExtensionProvider to parse the Avatar data. - * XML namespace urn:xmpp:avatar:data + * A PacketExtensionProvider to parse the Avatar data. XML namespace urn:xmpp:avatar:data */ public class AvatarProvider implements PacketExtensionProvider { /** - * Creates a new AvatarProvider. - * ProviderManager requires that every PacketExtensionProvider has a public, no-argument constructor + * Creates a new AvatarProvider. ProviderManager requires that every PacketExtensionProvider has a public, + * no-argument constructor */ public AvatarProvider() { } @Override - public PacketExtension parseExtension(XmlPullParser parser) - throws Exception { + public PacketExtension parseExtension(XmlPullParser parser) throws Exception { AvatarMetadataExtension metadata = new AvatarMetadataExtension(); boolean done = false; StringBuilder buffer = new StringBuilder(); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarRetriever.java --- a/src/com/beem/project/beem/smack/avatar/AvatarRetriever.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarRetriever.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.io.IOException; @@ -52,7 +52,6 @@ /** * Retrieve the avatar. - * * @return the avatar * @throws IOException if an IO error occurs while retrieving the avatar */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/AvatarRetrieverFactory.java --- a/src/com/beem/project/beem/smack/avatar/AvatarRetrieverFactory.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/AvatarRetrieverFactory.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import com.beem.project.beem.smack.avatar.AvatarMetadataExtension.Info; @@ -62,7 +62,6 @@ /** * Get a AvatarRetriever to retrieve this avatar. - * * @param con the connection * @param from the user which own the avatar * @param info the metadata information of the avatar to retrieve diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/FileAvatarCache.java --- a/src/com/beem/project/beem/smack/avatar/FileAvatarCache.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/FileAvatarCache.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.io.BufferedInputStream; @@ -62,7 +62,6 @@ /** * Create a FileAvatarCache. - * * @param storedir The directory used to store the data. */ public FileAvatarCache(final File storedir) { @@ -91,7 +90,7 @@ byte[] data = new byte[1024]; int nbread; while ((nbread = in.read(data)) != -1) - os.write(data, 0, nbread); + os.write(data, 0, nbread); } finally { in.close(); os.close(); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/HttpAvatarRetriever.java --- a/src/com/beem/project/beem/smack/avatar/HttpAvatarRetriever.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/HttpAvatarRetriever.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.io.InputStream; @@ -51,14 +51,13 @@ /** * An AvatarRetriever which retrieve the avatar over HTTP. */ -public class HttpAvatarRetriever implements AvatarRetriever { +public class HttpAvatarRetriever implements AvatarRetriever { private URL mUrl; private String mUrlString; /** * Create a HttpAvatarRetriever. - * * @param url the url of the avatar to download. */ public HttpAvatarRetriever(final URL url) { @@ -67,7 +66,6 @@ /** * Create a HttpAvatarRetriever. - * * @param url the url of the avatar to download. */ public HttpAvatarRetriever(final String url) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/HttpClientAvatarRetriever.java --- a/src/com/beem/project/beem/smack/avatar/HttpClientAvatarRetriever.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/HttpClientAvatarRetriever.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.io.InputStream; @@ -56,14 +56,13 @@ /** * An AvatarRetriever which retrieve the avatar over HTTP using the Apache HttpClient. */ -public class HttpClientAvatarRetriever implements AvatarRetriever { +public class HttpClientAvatarRetriever implements AvatarRetriever { private String mUrl; private HttpClient mClient; /** * Create a HttpAvatarRetriever. - * * @param client the custom HttpClient to use to downlowad * @param url the url of the avatar to download. */ @@ -74,7 +73,6 @@ /** * Create a HttpAvatarRetriever. - * * @param url the url of the avatar to download. */ public HttpClientAvatarRetriever(final String url) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/XmppAvatarRetriever.java --- a/src/com/beem/project/beem/smack/avatar/XmppAvatarRetriever.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/XmppAvatarRetriever.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.avatar; import java.util.List; @@ -65,7 +65,6 @@ /** * Create an XmppAvatarRetriever. - * * @param con the xmpp connection * @param from the contact from which we retrieve the avatar * @param id the id of the avatar to retrieve diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/avatar/package-info.java --- a/src/com/beem/project/beem/smack/avatar/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/avatar/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,9 +40,10 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains implementation of XEP-0084 User Avatar. */ package com.beem.project.beem.smack.avatar; + diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/caps/CapsExtension.java --- a/src/com/beem/project/beem/smack/caps/CapsExtension.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/caps/CapsExtension.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.caps; @@ -48,7 +48,6 @@ /** * This extension represents a capability of XEP-0115. - * */ public class CapsExtension implements PacketExtension { @@ -57,10 +56,8 @@ private String mNode; private String mExt; - /** * Create a CapsExtension. - * * @param hash The value of the hash attribute. * @param node the value of the node attribute * @param ver the value of the ver attribute. @@ -73,7 +70,6 @@ /** * Get the ver attribute value. - * * @return the value of the ver attribute. */ public String getVer() { @@ -82,7 +78,6 @@ /** * Get the hash attribute value. - * * @return the value of the hash attribute. */ public String getHash() { @@ -91,7 +86,6 @@ /** * Get the node attribute value. - * * @return the value of the node attribute. */ public String getNode() { @@ -100,7 +94,6 @@ /** * Get the ext attribute value. - * * @return the value of the ext attribute. */ public String getExt() { @@ -109,7 +102,6 @@ /** * Set the hash attribute. - * * @param hash the value of hash */ public void setHash(String hash) { @@ -118,7 +110,6 @@ /** * Set the ver attribute. - * * @param ver the value of ver */ public void setVer(String ver) { @@ -127,7 +118,6 @@ /** * Set the node attribute. - * * @param node the value of node */ public void setNode(String node) { @@ -136,7 +126,6 @@ /** * Set the ext attribute. - * * @param ext the value of ext */ public void setExt(String ext) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/caps/CapsManager.java --- a/src/com/beem/project/beem/smack/caps/CapsManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/caps/CapsManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.caps; import org.jivesoftware.smack.Connection; @@ -69,9 +69,7 @@ import org.jivesoftware.smack.util.StringUtils; /** - * Capabilities manager to implements XEP-0115. - * The DiscoverInfo are cached in memory. - * + * Capabilities manager to implements XEP-0115. The DiscoverInfo are cached in memory. */ public class CapsManager { // the verCache should be stored on disk @@ -85,7 +83,6 @@ /** * Create a CapsManager. - * * @param sdm The service discovery manager to use. * @param conn The connection to manage. */ @@ -97,7 +94,6 @@ /** * Get the discover info associated with a ver attribute. - * * @param ver the ver attribute. * @return the discover info or null if it was not cached. */ @@ -107,7 +103,6 @@ /** * Get the discover info of a contact. - * * @param jid the jid of the contact. * @param ver the ver attribute of the contact capability. * @return The info of the client null if the info was not cached. @@ -123,9 +118,7 @@ } /** - * Set the node attribute to send in your capability. - * This is usually an uri to identify the client. - * + * Set the node attribute to send in your capability. This is usually an uri to identify the client. * @param node the node attribute to set. */ public void setNode(String node) { @@ -133,9 +126,7 @@ } /** - * Load a persistent DiscoverInfo. - * The default implementation does nothing and always return null. - * + * Load a persistent DiscoverInfo. The default implementation does nothing and always return null. * @param ver the ver hash of the discoverInfo. * @return The discover info or null if not present. */ @@ -144,9 +135,7 @@ } /** - * Store a DiscoverInfo for persistence. - * The default implementation does nothing. - * + * Store a DiscoverInfo for persistence. The default implementation does nothing. * @param ver the ver hash of the DiscoverInfo * @param info the DiscoverInfo to store */ @@ -154,10 +143,8 @@ } /** - * Check if the discover info correspondig to the ver hash is in cache. - * This implementation checks the memory cache. + * Check if the discover info correspondig to the ver hash is in cache. This implementation checks the memory cache. * If the info is not in cache it is necessary to request it from the network. - * * @param ver the ver hash * @return true if it is in cache false otherwise */ @@ -202,7 +189,6 @@ /** * Validate the ver attribute of a received capability. - * * @param jid the jid of the sender of the capability. * @param node the node attribute of the capability. * @param ver the ver attribute of the capability. @@ -233,7 +219,6 @@ /** * Calculate the ver attribute. - * * @param info The discover info to calculate the ver. * @param hashMethod the hash algorithm to use. * @return the value of the ver attribute @@ -251,9 +236,9 @@ s.append(c); s.append('/'); // Should add lang but it is not available -// c = identity.getType(); -// if (c != null) -// S.append(c); + // c = identity.getType(); + // if (c != null) + // S.append(c); s.append('/'); c = identity.getName(); if (c != null) @@ -271,7 +256,6 @@ /** * Get the identities sorted correctly to calculate the ver attribute. - * * @param info the DiscoverInfo containing the identities * @return the sorted list of identities. */ @@ -286,16 +270,20 @@ public int compare(DiscoverInfo.Identity o1, DiscoverInfo.Identity o2) { String cat1 = o1.getCategory(); - if (cat1 == null) cat1 = ""; + if (cat1 == null) + cat1 = ""; String cat2 = o2.getCategory(); - if (cat2 == null) cat2 = ""; + if (cat2 == null) + cat2 = ""; int res = cat1.compareTo(cat2); if (res != 0) return res; String type1 = o1.getType(); - if (type1 == null) type1 = ""; + if (type1 == null) + type1 = ""; String type2 = o2.getCategory(); - if (type2 == null) type2 = ""; + if (type2 == null) + type2 = ""; res = type1.compareTo(type2); if (res != 0) return res; @@ -308,7 +296,6 @@ /** * Get the features sorted correctly to calculate the ver attribute. - * * @param info the DiscoverInfo containing the features * @return the sorted list of features. */ @@ -325,7 +312,6 @@ /** * Get the Discover Information send by your own connection. - * * @return your own DiscoverInfo */ private DiscoverInfo getOwnInformation() { @@ -342,7 +328,6 @@ /** * Calculate a Hash (digest). - * * @param algo the algorithm to use * @param data the data to compute * @return the resulting hash @@ -358,7 +343,7 @@ */ private void initSupportedAlgorithm() { // sort by ""preference" - String[] algo = new String[] {"sha-1", "md2", "md5", "sha-224", "sha-256", "sha-384", "sha-512" }; + String[] algo = new String[] { "sha-1", "md2", "md5", "sha-224", "sha-256", "sha-384", "sha-512" }; for (String a : algo) { try { MessageDigest md = MessageDigest.getInstance(a); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/caps/CapsProvider.java --- a/src/com/beem/project/beem/smack/caps/CapsProvider.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/caps/CapsProvider.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.caps; import org.xmlpull.v1.XmlPullParser; @@ -48,17 +48,16 @@ import org.jivesoftware.smack.packet.PacketExtension; /** - * PacketExtensionProvider for XEP-0115. - * This provider parse c element of namespace - * http://jabber.org/protocol/caps which represents a capability of XEP-0115 - * + * PacketExtensionProvider for XEP-0115. This provider parse c element of namespace http://jabber.org/protocol/caps + * which represents a capability of XEP-0115 */ public class CapsProvider implements PacketExtensionProvider { /** * Constructor. */ - public CapsProvider() { } + public CapsProvider() { + } @Override public PacketExtension parseExtension(XmlPullParser parser) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/caps/package-info.java --- a/src/com/beem/project/beem/smack/caps/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/caps/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,9 +40,10 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains implementation of XEP-0115. */ package com.beem.project.beem.smack.caps; + diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/pep/PEPListener.java --- a/src/com/beem/project/beem/smack/pep/PEPListener.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/pep/PEPListener.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.pep; import org.jivesoftware.smackx.pubsub.Item; @@ -52,8 +52,7 @@ public interface PEPListener { /** - * Called when PEP events are received. - * + * Called when PEP events are received. * @param from the JID of the user who send the event * @param node the node of the items in the event * @param items the different items of the event diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/pep/PepSubManager.java --- a/src/com/beem/project/beem/smack/pep/PepSubManager.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/pep/PepSubManager.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.smack.pep; import java.util.ArrayList; @@ -60,7 +60,6 @@ /** * Little extension of {@link PubSubManager} which allows to add {@link PEPListener}. - * */ public class PepSubManager extends PubSubManager { private List mPepListeners = new ArrayList(); @@ -68,7 +67,6 @@ /** * Create a PepSubManager. - * * @param connection the connection */ public PepSubManager(final Connection connection) { @@ -77,9 +75,8 @@ } /** - * Create a PepSubManager associated to the specified connection where the pubsub - * requests require a specific to address for packets. - * + * Create a PepSubManager associated to the specified connection where the pubsub requests require a specific to + * address for packets. * @param connection the connection * @param toAddress The pubsub specific to address (required for some servers) */ @@ -90,7 +87,6 @@ /** * Add a listener to PEP event. - * * @param listener the listener */ public void addPEPListener(PEPListener listener) { @@ -100,7 +96,6 @@ /** * Remove a listener to PEP event. - * * @param listener the listener */ public void removePEPListener(PEPListener listener) { @@ -108,9 +103,7 @@ } /** - * Get a PepNode. - * This node is obtain without checking its existence as PEP should auto create it. - * + * Get a PepNode. This node is obtain without checking its existence as PEP should auto create it. * @param nodeName the node name * @return the node */ @@ -122,7 +115,6 @@ /** * Initialize the PepSubManager. - * * @param con the connection */ private void init(Connection con) { @@ -145,7 +137,6 @@ /** * Fire the PEP listeners. - * * @param from the JID of the user who send the event * @param node the node of the items in the event * @param items the different items of the event diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/smack/pep/package-info.java --- a/src/com/beem/project/beem/smack/pep/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/smack/pep/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains an implementation of XEP-0163 Personnal Eventing Protocol based on the pubsub implementation. diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/AddContact.java --- a/src/com/beem/project/beem/ui/AddContact.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/AddContact.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import java.util.ArrayList; @@ -103,7 +103,8 @@ this.registerReceiver(mReceiver, new IntentFilter(BeemBroadcastReceiver.BEEM_CONNECTION_CLOSED)); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onStart() */ @Override @@ -129,7 +130,8 @@ unbindService(mServConn); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onDestroy() */ @Override @@ -178,7 +180,8 @@ /** * Constructor. */ - public OkListener() { } + public OkListener() { + } @Override public void onClick(View v) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/ChangeStatus.java --- a/src/com/beem/project/beem/ui/ChangeStatus.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/ChangeStatus.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; @@ -115,8 +115,7 @@ private static final int CAMERA_WITH_DATA = 0; private static final int PHOTO_PICKED_WITH_DATA = 1; - private static final File PHOTO_DIR = new File( - Environment.getExternalStorageDirectory() + "/DCIM/Camera"); + private static final File PHOTO_DIR = new File(Environment.getExternalStorageDirectory() + "/DCIM/Camera"); private static final String KEY_CURRENT_PHOTO_FILE = "currentphotofile"; @@ -174,7 +173,6 @@ avatarPanel.setVisibility(View.GONE); } - mSettings = PreferenceManager.getDefaultSharedPreferences(this); mStatusMessageEditText = (EditText) findViewById(R.id.ChangeStatusMessage); mStatusMessageEditText.setText(mSettings.getString(BeemApplication.STATUS_TEXT_KEY, "")); @@ -213,7 +211,8 @@ unbindService(mServConn); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onDestroy() */ @Override @@ -227,23 +226,21 @@ */ @Override protected void onSaveInstanceState(Bundle outState) { - if (mCurrentPhotoFile != null) { - outState.putString(KEY_CURRENT_PHOTO_FILE, mCurrentPhotoFile.toString()); - } - super.onSaveInstanceState(outState); + if (mCurrentPhotoFile != null) { + outState.putString(KEY_CURRENT_PHOTO_FILE, mCurrentPhotoFile.toString()); + } + super.onSaveInstanceState(outState); } @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { - String fileName = savedInstanceState.getString(KEY_CURRENT_PHOTO_FILE); - if (fileName != null) { - mCurrentPhotoFile = new File(fileName); - } - super.onRestoreInstanceState(savedInstanceState); + String fileName = savedInstanceState.getString(KEY_CURRENT_PHOTO_FILE); + if (fileName != null) { + mCurrentPhotoFile = new File(fileName); + } + super.onRestoreInstanceState(savedInstanceState); } - - @Override protected Dialog onCreateDialog(int id) { if (id == SELECT_PHOTO_DLG) @@ -253,11 +250,12 @@ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { - // Ignore failed requests - if (resultCode != RESULT_OK) return; + // Ignore failed requests + if (resultCode != RESULT_OK) + return; - switch (requestCode) { - case PHOTO_PICKED_WITH_DATA: + switch (requestCode) { + case PHOTO_PICKED_WITH_DATA: mAvatarUri = Uri.parse(data.getAction()); Log.d(TAG, "selected avatar uri " + mAvatarUri); if (mAvatarUri != null) { @@ -265,15 +263,15 @@ mDisableAvatar = false; mShowCurrentAvatar = false; } - break; + break; - case CAMERA_WITH_DATA: - doCropPhoto(mCurrentPhotoFile); - break; + case CAMERA_WITH_DATA: + doCropPhoto(mCurrentPhotoFile); + break; default: Log.w(TAG, "onActivityResult : invalid request code"); - } + } } /** @@ -328,7 +326,6 @@ /** * ClickListener for the avatarButton. - * * @param button the avatar button */ private void onAvatarButton(View button) { @@ -368,8 +365,7 @@ } /* - * Some codes from AOSP (platform/packages/apps/Contacts) - * to select and crop an image. + * Some codes from AOSP (platform/packages/apps/Contacts) to select and crop an image. */ /** @@ -377,36 +373,34 @@ * @return the dialog */ private Dialog createPickPhotoDialog() { - // Wrap our context to inflate list items using correct theme - final Context dialogContext = new ContextThemeWrapper(this, - android.R.style.Theme_Light); + // Wrap our context to inflate list items using correct theme + final Context dialogContext = new ContextThemeWrapper(this, android.R.style.Theme_Light); - final ListAdapter adapter = ArrayAdapter.createFromResource(dialogContext, - R.array.pick_photo_items, - android.R.layout.simple_list_item_1); + final ListAdapter adapter = ArrayAdapter.createFromResource(dialogContext, R.array.pick_photo_items, + android.R.layout.simple_list_item_1); - final AlertDialog.Builder builder = new AlertDialog.Builder(dialogContext); - builder.setTitle(R.string.select_avatar); - builder.setSingleChoiceItems(adapter, -1, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - dialog.dismiss(); - switch(which) { - case 0: - doTakePhoto(); - break; - case 1: - doPickPhotoFromGallery(); - break; - case 2: + final AlertDialog.Builder builder = new AlertDialog.Builder(dialogContext); + builder.setTitle(R.string.select_avatar); + builder.setSingleChoiceItems(adapter, -1, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + dialog.dismiss(); + switch (which) { + case 0: + doTakePhoto(); + break; + case 1: + doPickPhotoFromGallery(); + break; + case 2: mDisableAvatar = true; mAvatar.setImageURI(null); break; default: Log.w(TAG, "DialogInterface onClick : invalid which code"); - } - } - }); - return builder.create(); + } + } + }); + return builder.create(); } /** @@ -414,24 +408,24 @@ * @return the filename */ private String getPhotoFileName() { - Date date = new Date(System.currentTimeMillis()); - SimpleDateFormat dateFormat = new SimpleDateFormat("'IMG'_yyyyMMdd_HHmmss"); - return dateFormat.format(date) + ".jpg"; + Date date = new Date(System.currentTimeMillis()); + SimpleDateFormat dateFormat = new SimpleDateFormat("'IMG'_yyyyMMdd_HHmmss"); + return dateFormat.format(date) + ".jpg"; } /** * Launches Camera to take a picture and store it in a file. */ protected void doTakePhoto() { - try { - // Launch camera to take photo for selected contact - PHOTO_DIR.mkdirs(); - mCurrentPhotoFile = new File(PHOTO_DIR, getPhotoFileName()); - final Intent intent = getTakePickIntent(mCurrentPhotoFile); - startActivityForResult(intent, CAMERA_WITH_DATA); - } catch (ActivityNotFoundException e) { - Toast.makeText(this, R.string.photoPickerNotFoundText, Toast.LENGTH_LONG).show(); - } + try { + // Launch camera to take photo for selected contact + PHOTO_DIR.mkdirs(); + mCurrentPhotoFile = new File(PHOTO_DIR, getPhotoFileName()); + final Intent intent = getTakePickIntent(mCurrentPhotoFile); + startActivityForResult(intent, CAMERA_WITH_DATA); + } catch (ActivityNotFoundException e) { + Toast.makeText(this, R.string.photoPickerNotFoundText, Toast.LENGTH_LONG).show(); + } } /** @@ -440,9 +434,9 @@ * @return the intent */ public static Intent getTakePickIntent(File f) { - Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE, null); - intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f)); - return intent; + Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE, null); + intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f)); + return intent; } /** @@ -450,25 +444,22 @@ * @param f the image file to crop */ protected void doCropPhoto(final File f) { - try { + try { - // Add the image to the media store + // Add the image to the media store // level 8 /* - MediaScannerConnection.scanFile( - this, - new String[] { f.getAbsolutePath() }, - new String[] { null }, - null); - */ + * MediaScannerConnection.scanFile( this, new String[] { f.getAbsolutePath() }, new String[] { null }, + * null); + */ - // Launch gallery to crop the photo - final Intent intent = getCropImageIntent(Uri.fromFile(f)); - startActivityForResult(intent, PHOTO_PICKED_WITH_DATA); - } catch (ActivityNotFoundException e) { - Log.e(TAG, "Cannot crop image", e); - Toast.makeText(this, R.string.photoPickerNotFoundText, Toast.LENGTH_LONG).show(); - } + // Launch gallery to crop the photo + final Intent intent = getCropImageIntent(Uri.fromFile(f)); + startActivityForResult(intent, PHOTO_PICKED_WITH_DATA); + } catch (ActivityNotFoundException e) { + Log.e(TAG, "Cannot crop image", e); + Toast.makeText(this, R.string.photoPickerNotFoundText, Toast.LENGTH_LONG).show(); + } } /** @@ -477,28 +468,28 @@ * @return the intent */ public static Intent getCropImageIntent(Uri photoUri) { - Intent intent = new Intent("com.android.camera.action.CROP"); - intent.setDataAndType(photoUri, "image/*"); - intent.putExtra("crop", "true"); - intent.putExtra("aspectX", 1); - intent.putExtra("aspectY", 1); - intent.putExtra("outputX", ICON_SIZE); - intent.putExtra("outputY", ICON_SIZE); + Intent intent = new Intent("com.android.camera.action.CROP"); + intent.setDataAndType(photoUri, "image/*"); + intent.putExtra("crop", "true"); + intent.putExtra("aspectX", 1); + intent.putExtra("aspectY", 1); + intent.putExtra("outputX", ICON_SIZE); + intent.putExtra("outputY", ICON_SIZE); intent.putExtra(MediaStore.EXTRA_OUTPUT, MY_AVATAR_URI); - return intent; + return intent; } /** * Launches Gallery to pick a photo. */ protected void doPickPhotoFromGallery() { - try { - // Launch picker to choose photo for selected contact - final Intent intent = getPhotoPickIntent(); - startActivityForResult(intent, PHOTO_PICKED_WITH_DATA); - } catch (ActivityNotFoundException e) { - Toast.makeText(this, R.string.photoPickerNotFoundText, Toast.LENGTH_LONG).show(); - } + try { + // Launch picker to choose photo for selected contact + final Intent intent = getPhotoPickIntent(); + startActivityForResult(intent, PHOTO_PICKED_WITH_DATA); + } catch (ActivityNotFoundException e) { + Toast.makeText(this, R.string.photoPickerNotFoundText, Toast.LENGTH_LONG).show(); + } } /** @@ -506,21 +497,19 @@ * @return the intent */ public static Intent getPhotoPickIntent() { - Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null); - intent.setType("image/*"); - intent.putExtra("crop", "true"); - intent.putExtra("aspectX", 1); - intent.putExtra("aspectY", 1); - intent.putExtra("outputX", ICON_SIZE); - intent.putExtra("outputY", ICON_SIZE); + Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null); + intent.setType("image/*"); + intent.putExtra("crop", "true"); + intent.putExtra("aspectX", 1); + intent.putExtra("aspectY", 1); + intent.putExtra("outputX", ICON_SIZE); + intent.putExtra("outputY", ICON_SIZE); intent.putExtra(MediaStore.EXTRA_OUTPUT, MY_AVATAR_URI); // use this to get the bitmap in the intent -// intent.putExtra("return-data", true); - return intent; + // intent.putExtra("return-data", true); + return intent; } - - /** * connection to service. * @author nikita diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/Chat.java --- a/src/com/beem/project/beem/ui/Chat.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/Chat.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import java.io.IOException; @@ -176,7 +176,7 @@ mContactChatState = (TextView) findViewById(R.id.chat_contact_chat_state); mContactStatusIcon = (ImageView) findViewById(R.id.chat_contact_status_icon); mAvatarStatusDrawable = (LayerDrawable) mContactStatusIcon.getDrawable(); - mContactOtrState = (TextView) findViewById(R.id.chat_contact_otr_state); + mContactOtrState = (TextView) findViewById(R.id.chat_contact_otr_state); mAvatarStatusDrawable.setLayerInset(1, 36, 36, 0, 0); } else { setContentView(R.layout.chat_compact); @@ -318,7 +318,7 @@ } mChat.startOtrSession(); } catch (RemoteException e) { - Log.e(TAG, "start otr chats failed " + mChat , e); + Log.e(TAG, "start otr chats failed " + mChat, e); } break; case R.id.chat_menu_stop_otr_session: @@ -331,10 +331,10 @@ } mChat.endOtrSession(); } catch (RemoteException e) { - Log.e(TAG, "close otr chats failed " + mChat , e); + Log.e(TAG, "close otr chats failed " + mChat, e); } break; - case R.id.chat_menu_otr_local_key: + case R.id.chat_menu_otr_verify_key: try { if (mChat == null) { mChat = mChatManager.createChat(mContact, mMessageListener); @@ -342,26 +342,10 @@ mChat.setOpen(true); } } - String fk = mChat.getLocalOtrFingerprint(); - Dialog otrDialog = new DisplayOtrFingerprint(this, fk, true).create(); + Dialog otrDialog = new DisplayOtrFingerprint(this, mChat).create(); otrDialog.show(); } catch (RemoteException e) { - Log.e(TAG, "getting local otr key failed " + mChat , e); - } - break; - case R.id.chat_menu_otr_remote_key: - try { - if (mChat == null) { - mChat = mChatManager.createChat(mContact, mMessageListener); - if (mChat != null) { - mChat.setOpen(true); - } - } - String fk = mChat.getRemoteOtrFingerprint(); - Dialog otrDialog = new DisplayOtrFingerprint(this, fk, false).create(); - otrDialog.show(); - } catch (RemoteException e) { - Log.e(TAG, "getting remote otr key failed " + mChat , e); + Log.e(TAG, "getting local otr key failed " + mChat, e); } break; default: @@ -570,8 +554,8 @@ @Override public void run() { if (msg.getType() == Message.MSG_TYPE_ERROR) { - mListMessages.add(new MessageText(fromBareJid, mContact.getName(), - msg.getBody(), true, msg.getTimestamp())); + mListMessages.add(new MessageText(fromBareJid, mContact.getName(), msg.getBody(), true, msg + .getTimestamp())); mMessagesListAdapter.notifyDataSetChanged(); } else if (msg.getBody() != null) { MessageText lastMessage = null; @@ -583,8 +567,8 @@ lastMessage.setTimestamp(msg.getTimestamp()); mListMessages.set(mListMessages.size() - 1, lastMessage); } else if (msg.getBody() != null) - mListMessages.add(new MessageText(fromBareJid, mContact.getName(), - msg.getBody(), false, msg.getTimestamp())); + mListMessages.add(new MessageText(fromBareJid, mContact.getName(), msg.getBody(), + false, msg.getTimestamp())); mMessagesListAdapter.notifyDataSetChanged(); } } @@ -625,7 +609,7 @@ mHandler.post(new Runnable() { @Override public void run() { - updateOtrInformations(otrState); + updateOtrInformations(otrState); } }); @@ -652,31 +636,30 @@ } else { Mode m = Status.getPresenceModeFromStatus(mContact.getStatus()); if (m == null) - setTitle(getString(R.string.chat_name) + " " + name - + " (" + getString(R.string.contact_status_msg_offline) + ")"); + setTitle(getString(R.string.chat_name) + " " + name + " (" + + getString(R.string.contact_status_msg_offline) + ")"); else setTitle(getString(R.string.chat_name) + " " + name + " (" + m.name() + ")"); } } - + /** * Update the OTR informations. */ private void updateOtrInformations(final String otrState) { - String text = null; - if ("ENCRYPTED".equals(otrState)) { - text = Chat.this.getString(R.string.chat_otrstate_encrypted); - } else if ("FINISHED".equals(otrState)) { - text = Chat.this.getString(R.string.chat_otrstate_finished); - } else { - text = Chat.this.getString(R.string.chat_otrstate_plaintext); - } - mContactOtrState.setText(text); + String text = null; + if ("ENCRYPTED".equals(otrState)) { + text = Chat.this.getString(R.string.chat_otrstate_encrypted); + } else if ("FINISHED".equals(otrState)) { + text = Chat.this.getString(R.string.chat_otrstate_finished); + } else if ("AUTHENTICATED".equals(otrState)) { + text = Chat.this.getString(R.string.chat_otrstate_authenticated); + } else { + text = Chat.this.getString(R.string.chat_otrstate_plaintext); + } + mContactOtrState.setText(text); } - - - /** * Update the contact status icon. */ @@ -697,7 +680,6 @@ /** * Get a Drawable containing the avatar icon. - * * @param avatarId the avatar id to retrieve or null to get default * @return a Drawable */ @@ -727,18 +709,18 @@ * Prepare the status icons map. */ private void prepareIconsStatus() { - mStatusIconsMap.put(Status.CONTACT_STATUS_AVAILABLE, BitmapFactory.decodeResource(getResources(), - android.R.drawable.presence_online)); - mStatusIconsMap.put(Status.CONTACT_STATUS_AVAILABLE_FOR_CHAT, BitmapFactory.decodeResource(getResources(), - android.R.drawable.presence_online)); - mStatusIconsMap.put(Status.CONTACT_STATUS_AWAY, BitmapFactory.decodeResource(getResources(), - android.R.drawable.presence_away)); - mStatusIconsMap.put(Status.CONTACT_STATUS_BUSY, BitmapFactory.decodeResource(getResources(), - android.R.drawable.presence_busy)); - mStatusIconsMap.put(Status.CONTACT_STATUS_DISCONNECT, BitmapFactory.decodeResource(getResources(), - android.R.drawable.presence_offline)); - mStatusIconsMap.put(Status.CONTACT_STATUS_UNAVAILABLE, BitmapFactory.decodeResource(getResources(), - R.drawable.status_requested)); + mStatusIconsMap.put(Status.CONTACT_STATUS_AVAILABLE, + BitmapFactory.decodeResource(getResources(), android.R.drawable.presence_online)); + mStatusIconsMap.put(Status.CONTACT_STATUS_AVAILABLE_FOR_CHAT, + BitmapFactory.decodeResource(getResources(), android.R.drawable.presence_online)); + mStatusIconsMap.put(Status.CONTACT_STATUS_AWAY, + BitmapFactory.decodeResource(getResources(), android.R.drawable.presence_away)); + mStatusIconsMap.put(Status.CONTACT_STATUS_BUSY, + BitmapFactory.decodeResource(getResources(), android.R.drawable.presence_busy)); + mStatusIconsMap.put(Status.CONTACT_STATUS_DISCONNECT, + BitmapFactory.decodeResource(getResources(), android.R.drawable.presence_offline)); + mStatusIconsMap.put(Status.CONTACT_STATUS_UNAVAILABLE, + BitmapFactory.decodeResource(getResources(), R.drawable.status_requested)); } /** @@ -849,8 +831,7 @@ * @param message A String containing the message. * @param isError if the message is an error message. */ - public MessageText(final String bareJid, final String name, final String message, - final boolean isError) { + public MessageText(final String bareJid, final String name, final String message, final boolean isError) { mBareJid = bareJid; mName = name; mMessage = message; @@ -865,8 +846,8 @@ * @param isError if the message is an error message. * @param date the time of the message. */ - public MessageText(final String bareJid, final String name, final String message, - final boolean isError, final Date date) { + public MessageText(final String bareJid, final String name, final String message, final boolean isError, + final Date date) { mBareJid = bareJid; mName = name; mMessage = message; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/ContactList.java --- a/src/com/beem/project/beem/ui/ContactList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/ContactList.java Tue Aug 23 01:12:26 2011 +0200 @@ -39,7 +39,7 @@ Flavien Astraud, November 26, 2009 -*/ + */ package com.beem.project.beem.ui; import java.util.ArrayList; @@ -121,16 +121,16 @@ private final BeemContactList mAdapterContactList = new BeemContactList(); private final List mListGroup = new ArrayList(); - /** Map containing a list of the different contacts of a given group. - * Each list is a @{link SortedList} so there is no need to sort it again. - * */ + /** + * Map containing a list of the different contacts of a given group. Each list is a @{link SortedList} so there is + * no need to sort it again. + */ private final Map> mContactOnGroup = new HashMap>(); private final BeemContactListOnClick mOnContactClick = new BeemContactListOnClick(); private final Handler mHandler = new Handler(); private final ServiceConnection mServConn = new BeemServiceConnection(); private final BeemBroadcastReceiver mReceiver = new BeemBroadcastReceiver(); - private final ComparatorContactListByStatusAndName mComparator = - new ComparatorContactListByStatusAndName(); + private final ComparatorContactListByStatusAndName mComparator = new ComparatorContactListByStatusAndName(); private final BeemRosterListener mBeemRosterListener = new BeemRosterListener(); private List mListContact; private String mSelectedGroup; @@ -253,8 +253,8 @@ result = true; break; case R.id.contact_list_context_menu_userinfo_subscription: - Dialog subscription = new ResendSubscription(ContactList.this, - mXmppFacade, mSelectedContact).create(); + Dialog subscription = new ResendSubscription(ContactList.this, mXmppFacade, mSelectedContact) + .create(); subscription.show(); result = true; break; @@ -377,12 +377,10 @@ } /** - * {@inheritDoc} - * Simple stategy to handle the onEntriesAdded event. - * if contact has to be shown : + * {@inheritDoc} Simple stategy to handle the onEntriesAdded event. if contact has to be shown : *
    - *
  • add him to his groups
  • - *
  • add him to the specials groups + *
  • add him to his groups
  • + *
  • add him to the specials groups *
*/ @Override @@ -414,10 +412,9 @@ } /** - * {@inheritDoc} - * Simple stategy to handle the onEntriesDeleted event. + * {@inheritDoc} Simple stategy to handle the onEntriesDeleted event. *
    - *
  • Remove the contact from all groups
  • + *
  • Remove the contact from all groups
  • *
*/ @Override @@ -448,12 +445,11 @@ } /** - * {@inheritDoc} - * Simple stategy to handle the onEntriesUpdated event. + * {@inheritDoc} Simple stategy to handle the onEntriesUpdated event. *
    - *
  • Remove the contact from all groups
  • - *
  • if contact has to be shown add it to his groups
  • - *
  • if contact has to be shown add it to the specials groups
  • + *
  • Remove the contact from all groups
  • + *
  • if contact has to be shown add it to his groups
  • + *
  • if contact has to be shown add it to the specials groups
  • *
*/ @Override @@ -474,8 +470,7 @@ for (String group : groups) { if (!mListGroup.contains(group)) { mListGroup.add(mListGroup.size() - 1, group); - List tmplist = new SortedList( - new LinkedList(), mComparator); + List tmplist = new SortedList(new LinkedList(), mComparator); mContactOnGroup.put(group, tmplist); } mContactOnGroup.get(group).remove(contact); @@ -493,12 +488,11 @@ } /** - * {@inheritDoc} - * Simple stategy to handle the onPresenceChanged event. + * {@inheritDoc} Simple stategy to handle the onPresenceChanged event. *
    - *
  • Remove the contact from all groups
  • - *
  • if contact has to be shown add it to his groups
  • - *
  • if contact has to be shown add it to the specials groups
  • + *
  • Remove the contact from all groups
  • + *
  • if contact has to be shown add it to his groups
  • + *
  • if contact has to be shown add it to the specials groups
  • *
*/ @Override @@ -527,10 +521,8 @@ } /** - * Add a contact to the special list No Group and All contacts. - * The contact will be added if the list is not the current list otherwise - * the list must be modified in a Handler. - * + * Add a contact to the special list No Group and All contacts. The contact will be added if the list is not the + * current list otherwise the list must be modified in a Handler. * @param contact the contact to add. */ private void addToSpecialList(Contact contact) { @@ -547,7 +539,6 @@ /** * Update the current list with the status of contact. - * * @param listName name of the current list * @param contact contact to update */ @@ -556,12 +547,11 @@ final List groups = contact.getGroups(); String noGroup = getString(R.string.contact_list_no_group); String allGroup = getString(R.string.contact_list_all_contact); - final boolean add = ((!hideDisconnected || Status.statusOnline(contact.getStatus())) && // must show and - ( - (listName.equals(noGroup) && groups.isEmpty()) || // in no group - groups.contains(listName) || // or in current - listName.equals(allGroup) // or in all - )); + final boolean add = ((!hideDisconnected || Status.statusOnline(contact.getStatus())) && // must show and + ((listName.equals(noGroup) && groups.isEmpty()) || // in no group + groups.contains(listName) || // or in current + listName.equals(allGroup) // or in all + )); mHandler.post(new Runnable() { public void run() { mListContact.remove(contact); @@ -624,7 +614,6 @@ return mListContact.get(position).hashCode(); } - /** * {@inheritDoc} */ @@ -672,8 +661,8 @@ } /** - * Get a LayerDrawable containing the avatar and the status icon. - * The status icon will change with the level of the drawable. + * Get a LayerDrawable containing the avatar and the status icon. The status icon will change with the level of + * the drawable. * @param avatarId the avatar id to retrieve or null to get default * @return a LayerDrawable */ @@ -710,7 +699,8 @@ /** * Create a ContactFilter. */ - public ContactFilter() { } + public ContactFilter() { + } @Override protected Filter.FilterResults performFiltering(CharSequence constraint) { @@ -730,7 +720,7 @@ } @Override - protected void publishResults(CharSequence constraint, Filter.FilterResults results) { + protected void publishResults(CharSequence constraint, Filter.FilterResults results) { Log.d(TAG, "publishResults"); List contacts = (List) results.values; mListContact = contacts; @@ -839,9 +829,7 @@ } /** - * Assign the differents contact to their groups. - * This methods will fill the mContactOnGroup map. - * + * Assign the differents contact to their groups. This methods will fill the mContactOnGroup map. * @param contacts list of contacts * @param groupNames list of existing groups */ @@ -874,7 +862,6 @@ /** * Make the List of the map became Insertion sorted list. - * * @param map the map to convert. */ private void makeSortedList(Map> map) { @@ -885,9 +872,6 @@ } } - - - /** * Comparator Contact by status and name. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/CreateAccount.java --- a/src/com/beem/project/beem/ui/CreateAccount.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/CreateAccount.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import java.util.regex.Pattern; @@ -122,8 +122,8 @@ xmppConnection.connect(); AccountManager accountManager = new AccountManager(xmppConnection); accountManager.createAccount(username, password); - Toast toast = Toast.makeText(getApplicationContext(), String.format( - getString(R.string.create_account_successfull_after), username), NOTIFICATION_DURATION); + Toast toast = Toast.makeText(getApplicationContext(), + String.format(getString(R.string.create_account_successfull_after), username), NOTIFICATION_DURATION); toast.show(); } catch (XMPPException e) { createErrorDialog(e.getMessage()); @@ -139,9 +139,7 @@ */ private void createErrorDialog(String errMsg) { AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle(R.string.create_account_err_dialog_title) - .setMessage(errMsg) - .setCancelable(false) + builder.setTitle(R.string.create_account_err_dialog_title).setMessage(errMsg).setCancelable(false) .setIcon(android.R.drawable.ic_dialog_alert); builder.setNeutralButton(R.string.create_account_close_dialog_button, new DialogInterface.OnClickListener() { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/GroupList.java --- a/src/com/beem/project/beem/ui/GroupList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/GroupList.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import java.util.ArrayList; @@ -80,7 +80,7 @@ private static final Intent SERVICE_INTENT = new Intent(); private final ServiceConnection mServConn = new BeemServiceConnection(); - private final BeemBroadcastReceiver mReceiver = new BeemBroadcastReceiver(); + private final BeemBroadcastReceiver mReceiver = new BeemBroadcastReceiver(); private IXmppFacade mXmppFacade; private IRoster mRoster; private String mJID; @@ -99,7 +99,8 @@ public GroupList() { } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onCreate(android.os.Bundle) */ @Override @@ -137,7 +138,8 @@ unbindService(mServConn); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onDestroy() */ @Override diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/Login.java --- a/src/com/beem/project/beem/ui/Login.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/Login.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import android.app.Activity; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/LoginAnim.java --- a/src/com/beem/project/beem/ui/LoginAnim.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/LoginAnim.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import android.app.Activity; @@ -90,7 +90,8 @@ public LoginAnim() { } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onCreate(android.os.Bundle) */ @Override @@ -104,7 +105,8 @@ mCancelBt.setOnClickListener(new ClickListener()); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onStart() */ @Override @@ -117,7 +119,8 @@ mBinded = bindService(LoginAnim.SERVICE_INTENT, mServConn, BIND_AUTO_CREATE); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onPause() */ @Override @@ -129,7 +132,8 @@ } } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onKeyDown(int, android.view.KeyEvent) */ @Override @@ -178,7 +182,8 @@ LoginTask() { } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.os.AsyncTask#onPostExecute(java.lang.Object) */ @Override @@ -201,11 +206,12 @@ } @Override - protected void onProgressUpdate(Integer ... values) { + protected void onProgressUpdate(Integer... values) { mLoginState.setText(getResources().getStringArray(R.array.loganim_state)[values[0]]); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.os.AsyncTask#onCancelled() */ @Override diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/PrivacyList.java --- a/src/com/beem/project/beem/ui/PrivacyList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/PrivacyList.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import java.util.ArrayList; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/Settings.java --- a/src/com/beem/project/beem/ui/Settings.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/Settings.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import android.content.ComponentName; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/Subscription.java --- a/src/com/beem/project/beem/ui/Subscription.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/Subscription.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui; import org.jivesoftware.smack.packet.Presence; @@ -91,7 +91,8 @@ public Subscription() { } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onCreate(android.os.Bundle) */ @Override @@ -108,7 +109,8 @@ this.registerReceiver(mReceiver, new IntentFilter(BeemBroadcastReceiver.BEEM_CONNECTION_CLOSED)); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onResume() */ @Override @@ -117,7 +119,8 @@ bindService(new Intent(this, BeemService.class), mServConn, BIND_AUTO_CREATE); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onPause() */ @Override @@ -126,7 +129,8 @@ unbindService(mServConn); } - /* (non-Javadoc) + /* + * (non-Javadoc) * @see android.app.Activity#onDestroy() */ @Override @@ -137,7 +141,6 @@ /** * Send the presence stanza. - * * @param p presence stanza */ private void sendPresence(Presence p) { @@ -166,8 +169,7 @@ switch (v.getId()) { case R.id.SubscriptionAccept: presence = new Presence(Type.subscribed); - Toast.makeText(Subscription.this, getString(R.string.SubscriptAccept), Toast.LENGTH_SHORT) - .show(); + Toast.makeText(Subscription.this, getString(R.string.SubscriptAccept), Toast.LENGTH_SHORT).show(); break; case R.id.SubscriptionRefuse: presence = new Presence(Type.unsubscribed); diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/Alias.java --- a/src/com/beem/project/beem/ui/dialogs/builders/Alias.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/Alias.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import android.app.AlertDialog; @@ -80,12 +80,10 @@ mContact = contact; LayoutInflater factory = LayoutInflater.from(context); - final View textEntryView = factory.inflate( - R.layout.contactdialogaliasdialog, null); + final View textEntryView = factory.inflate(R.layout.contactdialogaliasdialog, null); setTitle(mContact.getJID()); setView(textEntryView); - mEditTextAlias = (EditText) textEntryView.findViewById( - R.id.CDAliasDialogName); + mEditTextAlias = (EditText) textEntryView.findViewById(R.id.CDAliasDialogName); mEditTextAlias.setText(mContact.getName()); setPositiveButton(R.string.OkButton, new DialogClickListener()); setNegativeButton(R.string.CancelButton, new DialogClickListener()); @@ -102,7 +100,6 @@ public DialogClickListener() { } - @Override public void onClick(final DialogInterface dialog, final int which) { if (which == DialogInterface.BUTTON_POSITIVE) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/ChatList.java --- a/src/com/beem/project/beem/ui/dialogs/builders/ChatList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/ChatList.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import java.util.List; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/CreatePrivacyList.java --- a/src/com/beem/project/beem/ui/dialogs/builders/CreatePrivacyList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/CreatePrivacyList.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import java.util.ArrayList; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/DeleteContact.java --- a/src/com/beem/project/beem/ui/dialogs/builders/DeleteContact.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/DeleteContact.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import android.app.AlertDialog; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/DeletePrivacyList.java --- a/src/com/beem/project/beem/ui/dialogs/builders/DeletePrivacyList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/DeletePrivacyList.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import android.app.AlertDialog; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/DisplayOtrFingerprint.java --- a/src/com/beem/project/beem/ui/dialogs/builders/DisplayOtrFingerprint.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/DisplayOtrFingerprint.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,14 +40,16 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; +import android.os.RemoteException; import com.beem.project.beem.R; +import com.beem.project.beem.service.aidl.IChat; /** * @@ -55,6 +57,7 @@ public class DisplayOtrFingerprint extends AlertDialog.Builder { private static final String TAG = "DisplayOtrFingerprint"; + private IChat mChat; /** * Constructor. @@ -62,17 +65,19 @@ * @param roster the roster which has the contact you want to delete. * @param contact the contact to delete. */ - public DisplayOtrFingerprint(final Context context, final String otrFingerprint, final boolean local) { + public DisplayOtrFingerprint(final Context context, final IChat chat) { super(context); - if (local) { - setMessage(context.getString(R.string.chat_otr_local_key, otrFingerprint)); - } else { - setMessage(context.getString(R.string.chat_otr_verify_key, otrFingerprint)); - DialogClickListener dl = new DialogClickListener(); - setPositiveButton(R.string.userinfo_yes, dl); - setNegativeButton(R.string.userinfo_no, dl); + mChat = chat; + try { + setMessage(context.getString(R.string.chat_otr_verify_key, chat.getLocalOtrFingerprint(), + chat.getRemoteOtrFingerprint())); + } catch (RemoteException e) { + e.printStackTrace(); } + DialogClickListener dl = new DialogClickListener(); + setPositiveButton(R.string.userinfo_yes, dl); + setNegativeButton(R.string.userinfo_no, dl); } /** @@ -89,7 +94,17 @@ @Override public void onClick(final DialogInterface dialog, final int which) { if (which == DialogInterface.BUTTON_POSITIVE) { - + try { + mChat.verifyRemoteFingerprint(true); + } catch (RemoteException e) { + e.printStackTrace(); + } + } else if (which == DialogInterface.BUTTON_NEGATIVE) { + try { + mChat.verifyRemoteFingerprint(false); + } catch (RemoteException e) { + e.printStackTrace(); + } } } } diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/ResendSubscription.java --- a/src/com/beem/project/beem/ui/dialogs/builders/ResendSubscription.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/ResendSubscription.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.dialogs.builders; import org.jivesoftware.smack.packet.Presence; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/dialogs/builders/package-info.java --- a/src/com/beem/project/beem/ui/dialogs/builders/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/dialogs/builders/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains Beem dialog builder's. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/package-info.java --- a/src/com/beem/project/beem/ui/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -39,7 +39,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains the different activity displayed by BEEM and other class useful to make the UI. */ diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/wizard/Account.java --- a/src/com/beem/project/beem/ui/wizard/Account.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/wizard/Account.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.wizard; import android.app.Activity; @@ -56,7 +56,6 @@ /** * The first activity of an user friendly wizard to configure a XMPP account. - * * @author Da Risk */ public class Account extends Activity implements OnClickListener, RadioGroup.OnCheckedChangeListener { @@ -98,7 +97,7 @@ } @Override - public void onCheckedChanged(RadioGroup group, int checkedId) { + public void onCheckedChanged(RadioGroup group, int checkedId) { if (checkedId == -1) mNextButton.setEnabled(false); else diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/wizard/AccountConfigure.java --- a/src/com/beem/project/beem/ui/wizard/AccountConfigure.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/wizard/AccountConfigure.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.ui.wizard; import android.app.Activity; @@ -67,7 +67,6 @@ /** * Activity to enter the information required in order to configure a XMPP account. - * * @author Da Risk */ public class AccountConfigure extends Activity implements OnClickListener { @@ -99,7 +98,6 @@ mAccountJID = (EditText) findViewById(R.id.account_username); mAccountPassword = (EditText) findViewById(R.id.account_password); - InputFilter[] orgFilters = mAccountJID.getFilters(); InputFilter[] newFilters = new InputFilter[orgFilters.length + 1]; int i; @@ -195,11 +193,11 @@ } @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { + public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { + public void onTextChanged(CharSequence s, int start, int before, int count) { } } @@ -221,11 +219,11 @@ } @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { + public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { + public void onTextChanged(CharSequence s, int start, int before, int count) { } } } diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/ui/wizard/package-info.java --- a/src/com/beem/project/beem/ui/wizard/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/ui/wizard/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains some configuration wizards. diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/BeemBroadcastReceiver.java --- a/src/com/beem/project/beem/utils/BeemBroadcastReceiver.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/BeemBroadcastReceiver.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.utils; import android.app.Activity; @@ -84,8 +84,9 @@ } } else if (intentAction.equals(ConnectivityManager.CONNECTIVITY_ACTION)) { if (intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false)) { - Toast.makeText(context, context.getString(R.string.BeemBroadcastReceiverDisconnect), - Toast.LENGTH_SHORT).show(); + Toast + .makeText(context, context.getString(R.string.BeemBroadcastReceiverDisconnect), Toast.LENGTH_SHORT) + .show(); context.stopService(new Intent(context, BeemService.class)); } } diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/BeemConnectivity.java --- a/src/com/beem/project/beem/utils/BeemConnectivity.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/BeemConnectivity.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.utils; import android.content.Context; @@ -59,7 +59,8 @@ /** * Private constructor to forbid instantiation. */ - private BeemConnectivity() { } + private BeemConnectivity() { + } /** * Checks if is connected. @@ -67,8 +68,7 @@ * @return true, if is connected */ public static boolean isConnected(final Context ctx) { - ConnectivityManager cm = (ConnectivityManager) ctx.getSystemService( - Context.CONNECTIVITY_SERVICE); + ConnectivityManager cm = (ConnectivityManager) ctx.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo ni = cm.getActiveNetworkInfo(); return ni != null && ni.isConnected(); } @@ -79,14 +79,11 @@ * @return true, if is wifi */ public static boolean isWifi(final Context ctx) { - WifiManager wm = (WifiManager) ctx.getSystemService( - Context.WIFI_SERVICE); + WifiManager wm = (WifiManager) ctx.getSystemService(Context.WIFI_SERVICE); WifiInfo wi = wm.getConnectionInfo(); if (wi != null - && (WifiInfo.getDetailedStateOf(wi.getSupplicantState()) - == DetailedState.OBTAINING_IPADDR - || WifiInfo.getDetailedStateOf(wi.getSupplicantState()) - == DetailedState.CONNECTED)) { + && (WifiInfo.getDetailedStateOf(wi.getSupplicantState()) == DetailedState.OBTAINING_IPADDR || WifiInfo + .getDetailedStateOf(wi.getSupplicantState()) == DetailedState.CONNECTED)) { return false; } return false; @@ -98,8 +95,7 @@ * @return true, if is umts */ public static boolean isUmts(final Context ctx) { - TelephonyManager tm = (TelephonyManager) ctx.getSystemService( - Context.TELEPHONY_SERVICE); + TelephonyManager tm = (TelephonyManager) ctx.getSystemService(Context.TELEPHONY_SERVICE); return tm.getNetworkType() >= TelephonyManager.NETWORK_TYPE_UMTS; } @@ -109,8 +105,7 @@ * @return true, if is edge */ public static boolean isEdge(final Context ctx) { - TelephonyManager tm = (TelephonyManager) ctx.getSystemService( - Context.TELEPHONY_SERVICE); + TelephonyManager tm = (TelephonyManager) ctx.getSystemService(Context.TELEPHONY_SERVICE); return tm.getNetworkType() == TelephonyManager.NETWORK_TYPE_EDGE; } diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/FreePort.java --- a/src/com/beem/project/beem/utils/FreePort.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/FreePort.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.utils; import java.io.IOException; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/PresenceType.java --- a/src/com/beem/project/beem/utils/PresenceType.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/PresenceType.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.utils; import org.jivesoftware.smack.packet.Presence; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/SortedList.java --- a/src/com/beem/project/beem/utils/SortedList.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/SortedList.java Tue Aug 23 01:12:26 2011 +0200 @@ -26,7 +26,7 @@ Please send bug reports with examples or suggestions to contact@beem-project.com or http://dev.beem-project.com/ -*/ + */ package com.beem.project.beem.utils; import java.util.List; @@ -37,10 +37,8 @@ import java.util.Collections; /** - * This class add a sort by insertion to a List. - * All methods which allow you to insert an object at a specific index + * This class add a sort by insertion to a List. All methods which allow you to insert an object at a specific index * will throw an UnsupportedOperationException. - * * @author Da Risk * @param the type of elements maintained by this list */ @@ -51,7 +49,6 @@ /** * Create a SortedList. The existing elements will be sorted. - * * @param list list to sort * @param mComparator mComparator to use. */ @@ -129,9 +126,7 @@ } /** - * Add all the elements in the specified collection. - * The index param is ignored. - * + * Add all the elements in the specified collection. The index param is ignored. * @param index ignored * @param c collection containing elements to be added to this list * @return true if this list changed as a result of the call @@ -142,9 +137,7 @@ } /** - * Add all the elements in the specified collection. - * The index param is ignored. - * + * Add all the elements in the specified collection. The index param is ignored. * @param l collection containing elements to be added to this list * @return true if this list changed as a result of the call * @see addAll(Collection) @@ -248,8 +241,7 @@ } /** - * A SortedList.iterator don't allow list modification. - * It use the mBackend iterator for the other operations. + * A SortedList.iterator don't allow list modification. It use the mBackend iterator for the other operations. */ private class SortedListIterator implements ListIterator { @@ -257,7 +249,6 @@ /** * Construct SortedList.Iterator. - * * @param iterator the iterator of the backend list */ SortedListIterator(final ListIterator iterator) { diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/Status.java --- a/src/com/beem/project/beem/utils/Status.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/Status.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ package com.beem.project.beem.utils; import org.jivesoftware.smack.packet.Presence; diff -r 211f45e7bbd3 -r a4bbcfbd0a91 src/com/beem/project/beem/utils/package-info.java --- a/src/com/beem/project/beem/utils/package-info.java Mon Aug 22 22:35:31 2011 +0200 +++ b/src/com/beem/project/beem/utils/package-info.java Tue Aug 23 01:12:26 2011 +0200 @@ -40,7 +40,7 @@ Flavien Astraud, November 26, 2009 Head of the EIP Laboratory. -*/ + */ /** * This package contains utility class to deal with various aspect of BEEM. */