From e72f4091975838edf4ec6edf8b98c8214241a069 Mon Sep 17 00:00:00 2001 From: lookshe Date: Sat, 12 Mar 2016 14:15:39 +0100 Subject: removed duplicated source --- .../xmpp/jingle/JingleConnection.java | 31 +++++++--------------- 1 file changed, 10 insertions(+), 21 deletions(-) (limited to 'src/main/java/eu/siacs/conversations/xmpp/jingle') diff --git a/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java b/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java index 147d53e2..8185c8e1 100644 --- a/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java +++ b/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java @@ -32,6 +32,7 @@ import eu.siacs.conversations.entities.TransferablePlaceholder; import eu.siacs.conversations.persistance.FileBackend; import eu.siacs.conversations.services.AbstractConnectionManager; import eu.siacs.conversations.services.XmppConnectionService; +import eu.siacs.conversations.utils.FileUtils; import eu.siacs.conversations.xml.Element; import eu.siacs.conversations.xmpp.OnIqPacketReceived; import eu.siacs.conversations.xmpp.jid.Jid; @@ -325,23 +326,21 @@ public class JingleConnection implements Transferable { if (fileNameElement != null) { String filename = fileNameElement.getContent() .toLowerCase(Locale.US).toLowerCase(); - final int lastDotPosition = filename.lastIndexOf('.'); - final int secondToLastDotPosition = filename.lastIndexOf('.', lastDotPosition - 1); - final String lastPart = lastDotPosition != -1 ? - filename.substring(lastDotPosition + 1) : ""; - final String secondToLastPart = secondToLastDotPosition != -1 ? - filename.substring(secondToLastDotPosition + 1, lastDotPosition - 1) : ""; - if (lastDotPosition != -1) { + final String lastPart = FileUtils.getLastExtension(filename); + final String secondToLastPart = FileUtils.getSecondToLastExtension(filename); + if (!lastPart.isEmpty()) { if (VALID_IMAGE_EXTENSIONS.contains(lastPart)) { message.setType(Message.TYPE_IMAGE); message.setRelativeFilePath(message.getUuid()+"."+lastPart); } else if (VALID_CRYPTO_EXTENSIONS.contains(lastPart)) { - if (secondToLastDotPosition != -1) { + if (!secondToLastPart.isEmpty()) { if (VALID_IMAGE_EXTENSIONS.contains(secondToLastPart)) { message.setType(Message.TYPE_IMAGE); message.setRelativeFilePath(message.getUuid()+"."+secondToLastPart); } else { message.setType(Message.TYPE_FILE); + message.setRelativeFilePath(message.getUuid() + "_" + + filename.substring(0, filename.length() - (secondToLastPart.length() + 1))); } if (lastPart.equals("otr")) { message.setEncryption(Message.ENCRYPTION_OTR); @@ -351,23 +350,13 @@ public class JingleConnection implements Transferable { } } else { message.setType(Message.TYPE_FILE); + message.setRelativeFilePath(message.getUuid() + "_" + filename); } } else { message.setType(Message.TYPE_FILE); + message.setRelativeFilePath(message.getUuid() + "_" + filename); } - if (message.getType() == Message.TYPE_FILE) { - String suffix = ""; - if (!fileNameElement.getContent().isEmpty()) { - String parts[] = fileNameElement.getContent().split("/"); - suffix = parts[parts.length - 1]; - if (message.getEncryption() == Message.ENCRYPTION_OTR && suffix.endsWith(".otr")) { - suffix = suffix.substring(0,suffix.length() - 4); - } else if (message.getEncryption() == Message.ENCRYPTION_PGP && (suffix.endsWith(".pgp") || suffix.endsWith(".gpg"))) { - suffix = suffix.substring(0,suffix.length() - 4); - } - } - message.setRelativeFilePath(message.getUuid()+"_"+suffix); - } + long size = Long.parseLong(fileSize.getContent()); message.setBody(Long.toString(size)); conversation.add(message); -- cgit v1.2.3