diff options
author | Vincent Lucas <chenzo@jitsi.org> | 2012-03-01 11:34:37 +0000 |
---|---|---|
committer | Vincent Lucas <chenzo@jitsi.org> | 2012-03-01 11:34:37 +0000 |
commit | 4e3d34114014e261cacc3fe3b90c0fa999dc5547 (patch) | |
tree | cbbac69daefc540cc1bdc0207d7a8c009910b160 | |
parent | 8f83e30aa7a0b4524f97605636c39bdbacb0aa35 (diff) | |
download | jitsi-4e3d34114014e261cacc3fe3b90c0fa999dc5547.zip jitsi-4e3d34114014e261cacc3fe3b90c0fa999dc5547.tar.gz jitsi-4e3d34114014e261cacc3fe3b90c0fa999dc5547.tar.bz2 |
Adds an enumeration for the available transport protocols (UNKNOWN, UDP, TCP or TLS) used to carry the control channel of protocol services (SIP, XMPP, etc.). Updates ProtocolProviderServices getTransportType() function to getTransportProtocol() which returns a transport protocol enumeration.
15 files changed, 128 insertions, 63 deletions
diff --git a/src/net/java/sip/communicator/impl/gui/main/call/CallInfoFrame.java b/src/net/java/sip/communicator/impl/gui/main/call/CallInfoFrame.java index fa30827..1fd39d0 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/CallInfoFrame.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/CallInfoFrame.java @@ -186,13 +186,13 @@ public class CallInfoFrame "service.gui.callinfo.IS_CONFERENCE_FOCUS"), String.valueOf(isConfFocus))); - String preferredTransport = - call.getProtocolProvider().getTransportType(); + TransportProtocolEnum preferredTransport = + call.getProtocolProvider().getTransportProtocol(); - if (preferredTransport != null && preferredTransport.length() > 0) + if (preferredTransport != TransportProtocolEnum.UNKNOWN) stringBuffer.append(getLineString( resources.getI18NString("service.gui.callinfo.CALL_TRANSPORT"), - preferredTransport)); + preferredTransport.toString())); constructCallPeersInfo(stringBuffer); diff --git a/src/net/java/sip/communicator/impl/protocol/dict/ProtocolProviderServiceDictImpl.java b/src/net/java/sip/communicator/impl/protocol/dict/ProtocolProviderServiceDictImpl.java index c7677e3..2b11735 100644 --- a/src/net/java/sip/communicator/impl/protocol/dict/ProtocolProviderServiceDictImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/dict/ProtocolProviderServiceDictImpl.java @@ -311,13 +311,14 @@ public class ProtocolProviderServiceDictImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/gibberish/ProtocolProviderServiceGibberishImpl.java b/src/net/java/sip/communicator/impl/protocol/gibberish/ProtocolProviderServiceGibberishImpl.java index 5b91141..cae335f 100644 --- a/src/net/java/sip/communicator/impl/protocol/gibberish/ProtocolProviderServiceGibberishImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/gibberish/ProtocolProviderServiceGibberishImpl.java @@ -300,14 +300,14 @@ public class ProtocolProviderServiceGibberishImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (null as the transport - * protocol is unknown). + * @return The "transport" protocol of this instance: UNKNOWN. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return null; + return TransportProtocolEnum.UNKNOWN; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/icq/ProtocolProviderServiceIcqImpl.java b/src/net/java/sip/communicator/impl/protocol/icq/ProtocolProviderServiceIcqImpl.java index 7f994b9..05e4b52 100644 --- a/src/net/java/sip/communicator/impl/protocol/icq/ProtocolProviderServiceIcqImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/icq/ProtocolProviderServiceIcqImpl.java @@ -429,13 +429,14 @@ public class ProtocolProviderServiceIcqImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java b/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java index 7fe0473..874abd4 100644 --- a/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java @@ -289,13 +289,14 @@ public class ProtocolProviderServiceIrcImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/jabber/ProtocolProviderServiceJabberImpl.java b/src/net/java/sip/communicator/impl/protocol/jabber/ProtocolProviderServiceJabberImpl.java index d859841..f98b812 100644 --- a/src/net/java/sip/communicator/impl/protocol/jabber/ProtocolProviderServiceJabberImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/jabber/ProtocolProviderServiceJabberImpl.java @@ -570,11 +570,12 @@ public class ProtocolProviderServiceJabberImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP, TLS). + * @return The "transport" protocol of this instance: TCP, TLS or UNKNOWN. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { // Without a connection, there is no transport available. if(connection != null && connection.isConnected()) @@ -582,12 +583,12 @@ public class ProtocolProviderServiceJabberImpl // Transport using a secure connection. if(connection.isUsingTLS()) { - return "TLS"; + return TransportProtocolEnum.TLS; } // Transport using a unsecure connection. - return "TCP"; + return TransportProtocolEnum.TCP; } - return null; + return TransportProtocolEnum.UNKNOWN; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/mock/MockProvider.java b/src/net/java/sip/communicator/impl/protocol/mock/MockProvider.java index 6a6844b..5c14c83 100644 --- a/src/net/java/sip/communicator/impl/protocol/mock/MockProvider.java +++ b/src/net/java/sip/communicator/impl/protocol/mock/MockProvider.java @@ -212,14 +212,14 @@ public class MockProvider } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (null as the transport - * protocol is unknown). + * @return The "transport" protocol of this instance: UNKNOWN. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return null; + return TransportProtocolEnum.UNKNOWN; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/msn/ProtocolProviderServiceMsnImpl.java b/src/net/java/sip/communicator/impl/protocol/msn/ProtocolProviderServiceMsnImpl.java index 021eed3..5ed2848 100644 --- a/src/net/java/sip/communicator/impl/protocol/msn/ProtocolProviderServiceMsnImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/msn/ProtocolProviderServiceMsnImpl.java @@ -261,13 +261,14 @@ public class ProtocolProviderServiceMsnImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/rss/ProtocolProviderServiceRssImpl.java b/src/net/java/sip/communicator/impl/protocol/rss/ProtocolProviderServiceRssImpl.java index 1fc9db5..c5bf890 100644 --- a/src/net/java/sip/communicator/impl/protocol/rss/ProtocolProviderServiceRssImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/rss/ProtocolProviderServiceRssImpl.java @@ -243,13 +243,14 @@ public class ProtocolProviderServiceRssImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/sip/ProtocolProviderServiceSipImpl.java b/src/net/java/sip/communicator/impl/protocol/sip/ProtocolProviderServiceSipImpl.java index 4414787..204dc35 100644 --- a/src/net/java/sip/communicator/impl/protocol/sip/ProtocolProviderServiceSipImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/sip/ProtocolProviderServiceSipImpl.java @@ -1640,22 +1640,24 @@ public class ProtocolProviderServiceSipImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (UDP, TCP, TLS), or null - * if the transport protocol is unknown. + * @return The "transport" protocol of this instance: UDP, TCP, TLS or + * UNKNOWN. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { // The transport protocol is not set properly when dealing with a - // RegistrarLess account. This is why we return "null" in this case. + // RegistrarLess account. This is why we return "UNKNOWN" in this case. if(this.sipRegistrarConnection == null || this.sipRegistrarConnection instanceof SipRegistrarlessConnection) { - return null; + return TransportProtocolEnum.UNKNOWN; } - return sipRegistrarConnection.getTransport(); + return TransportProtocolEnum.parse( + sipRegistrarConnection.getTransport()); } /** diff --git a/src/net/java/sip/communicator/impl/protocol/ssh/ProtocolProviderServiceSSHImpl.java b/src/net/java/sip/communicator/impl/protocol/ssh/ProtocolProviderServiceSSHImpl.java index dfe6dea..b3f56c4 100644 --- a/src/net/java/sip/communicator/impl/protocol/ssh/ProtocolProviderServiceSSHImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/ssh/ProtocolProviderServiceSSHImpl.java @@ -632,13 +632,14 @@ public class ProtocolProviderServiceSSHImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/yahoo/ProtocolProviderServiceYahooImpl.java b/src/net/java/sip/communicator/impl/protocol/yahoo/ProtocolProviderServiceYahooImpl.java index 8d0abf1..8315eba 100644 --- a/src/net/java/sip/communicator/impl/protocol/yahoo/ProtocolProviderServiceYahooImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/yahoo/ProtocolProviderServiceYahooImpl.java @@ -344,13 +344,14 @@ public class ProtocolProviderServiceYahooImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/impl/protocol/zeroconf/ProtocolProviderServiceZeroconfImpl.java b/src/net/java/sip/communicator/impl/protocol/zeroconf/ProtocolProviderServiceZeroconfImpl.java index d71f6e3..3ac9ac0 100644 --- a/src/net/java/sip/communicator/impl/protocol/zeroconf/ProtocolProviderServiceZeroconfImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/zeroconf/ProtocolProviderServiceZeroconfImpl.java @@ -270,13 +270,14 @@ public class ProtocolProviderServiceZeroconfImpl } /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (TCP). + * @return The "transport" protocol of this instance: TCP. */ - public String getTransportType() + public TransportProtocolEnum getTransportProtocol() { - return "TCP"; + return TransportProtocolEnum.TCP; } /** diff --git a/src/net/java/sip/communicator/service/protocol/ProtocolProviderService.java b/src/net/java/sip/communicator/service/protocol/ProtocolProviderService.java index 60dd2aa..75971d7 100644 --- a/src/net/java/sip/communicator/service/protocol/ProtocolProviderService.java +++ b/src/net/java/sip/communicator/service/protocol/ProtocolProviderService.java @@ -189,10 +189,11 @@ public interface ProtocolProviderService public boolean isSignalingTransportSecure(); /** - * Returns the transport protocol of this instance. + * Returns the "transport" protocol of this instance used to carry the + * control channel for the current protocol service. * - * @return The transport protocol of this instance (UDP, TCP, TLS), or null - * if the transport protocol is unknown. + * @return The "transport" protocol of this instance: UDP, TCP, TLS or + * UNKNOWN. */ - public String getTransportType(); + public TransportProtocolEnum getTransportProtocol(); } diff --git a/src/net/java/sip/communicator/service/protocol/TransportProtocolEnum.java b/src/net/java/sip/communicator/service/protocol/TransportProtocolEnum.java new file mode 100644 index 0000000..5236e50 --- /dev/null +++ b/src/net/java/sip/communicator/service/protocol/TransportProtocolEnum.java @@ -0,0 +1,53 @@ +/* + * Jitsi, the OpenSource Java VoIP and Instant Messaging client. + * + * Distributable under LGPL license. + * See terms of license at gnu.org. + */ +package net.java.sip.communicator.service.protocol; + +/** + * Enumerates the "transport" (OSI transport/application) protocols used to + * carry the control channel for protocol services like xmmp, sip, etc. + * + * @author Vincent Lucas + */ +public enum TransportProtocolEnum +{ + /** + * The "transport" protocol is unknown. + */ + UNKNOWN, + + /** + * The "transport" protocol is UDP. + */ + UDP, + + /** + * The "transport" protocol is TCP. + */ + TCP, + + /** + * The "transport" protocol is TLS. + */ + TLS; + + public static TransportProtocolEnum parse(String transportProtocol) + throws IllegalArgumentException + { + if(UNKNOWN.toString().equals(transportProtocol)) + return UNKNOWN; + else if(UDP.toString().equals(transportProtocol)) + return UDP; + else if(TCP.toString().equals(transportProtocol)) + return TCP; + else if(TLS.toString().equals(transportProtocol)) + return TLS; + + throw new IllegalArgumentException( + transportProtocol + + "is not a currently supported TransportProtocolEnum"); + } +} |