|
Openfire 3.8.1 Javadoc | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.jivesoftware.openfire.net.VirtualConnection
public abstract class VirtualConnection
Abstract implementation of the Connection interface that models abstract connections. Abstract connections are connections that don't have a physical connection counterpart. Instead they can be seen as conceptual or just 'abstract' connections.
Default values and common behavior of virtual connections are modeled in this class. Subclasses should just need to specify how packets are delivered and what means closing the connection.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.jivesoftware.openfire.Connection |
|---|
Connection.ClientAuth, Connection.CompressionPolicy, Connection.TLSPolicy |
| Field Summary | |
|---|---|
protected LocalSession |
session
|
| Constructor Summary | |
|---|---|
VirtualConnection()
|
|
| Method Summary | |
|---|---|
void |
addCompression()
Adds the compression filter to the connection but only filter incoming traffic. |
void |
close()
Closes the session, the virtual connection and notifies listeners that the connection has been closed. |
abstract void |
closeVirtualConnection()
Closes the virtual connection. |
Connection.CompressionPolicy |
getCompressionPolicy()
Returns whether compression is optional or is disabled. |
String |
getLanguage()
Returns the language code that should be used for this connection (e.g. |
Certificate[] |
getLocalCertificates()
Returns the local underlying X509Certificate
chain for the connection. |
int |
getMajorXMPPVersion()
Returns the major version of XMPP being used by this connection (major_version.minor_version. |
int |
getMinorXMPPVersion()
Returns the minor version of XMPP being used by this connection (major_version.minor_version. |
PacketDeliverer |
getPacketDeliverer()
Returns the packet deliverer to use when delivering a packet over the socket fails. |
Certificate[] |
getPeerCertificates()
Returns the underlying X509Certificate for
the connection of the peer. |
Connection.TLSPolicy |
getTlsPolicy()
Returns whether TLS is mandatory, optional or is disabled. |
void |
init(LocalSession session)
Initializes the connection with it's owning session. |
boolean |
isClosed()
Returns true if the connection/session is closed. |
boolean |
isCompressed()
Returns true if the connection is using compression. |
boolean |
isFlashClient()
Returns true if the connected client is a flash client. |
boolean |
isSecure()
Returns true if this connection is secure. |
boolean |
isUsingSelfSignedCertificate()
Returns true if the other peer of this session presented a self-signed certificate. |
void |
registerCloseListener(ConnectionCloseListener listener,
Object handbackMessage)
Registers a listener for close event notification. |
void |
removeCloseListener(ConnectionCloseListener listener)
Removes a registered close event listener. |
void |
setCompressionPolicy(Connection.CompressionPolicy compressionPolicy)
Sets whether compression is enabled or is disabled. |
void |
setFlashClient(boolean flashClient)
Sets whether the connected client is a flash client. |
void |
setLanaguage(String language)
Sets the language code that should be used for this connection (e.g. |
void |
setTlsPolicy(Connection.TLSPolicy tlsPolicy)
Sets whether TLS is mandatory, optional or is disabled. |
void |
setUsingSelfSignedCertificate(boolean isSelfSigned)
Keeps track if the other peer of this session presented a self-signed certificate. |
void |
setXMPPVersion(int majorVersion,
int minorVersion)
Sets the XMPP version information. |
void |
startCompression()
Start compressing outgoing traffic for this connection. |
void |
startTLS(boolean clientMode,
String remoteServer,
Connection.ClientAuth authentication)
Secures the plain connection by negotiating TLS with the other peer. |
boolean |
validate()
Verifies that the connection is still live. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.jivesoftware.openfire.Connection |
|---|
deliver, deliverRawText, getAddress, getHostAddress, getHostName, systemShutdown |
| Field Detail |
|---|
protected LocalSession session
| Constructor Detail |
|---|
public VirtualConnection()
| Method Detail |
|---|
public String getLanguage()
Connection
getLanguage in interface Connectionpublic int getMajorXMPPVersion()
Connection
getMajorXMPPVersion in interface Connectionpublic int getMinorXMPPVersion()
Connection
getMinorXMPPVersion in interface Connectionpublic Certificate[] getLocalCertificates()
ConnectionX509Certificate
chain for the connection.
getLocalCertificates in interface Connectionpublic Certificate[] getPeerCertificates()
ConnectionX509Certificate for
the connection of the peer.
getPeerCertificates in interface Connectionpublic void setUsingSelfSignedCertificate(boolean isSelfSigned)
Connection
setUsingSelfSignedCertificate in interface ConnectionisSelfSigned - true if the other peer presented a self-signed certificate.public boolean isUsingSelfSignedCertificate()
Connection
isUsingSelfSignedCertificate in interface Connectionpublic boolean isClosed()
Connection
isClosed in interface Connectionpublic Connection.CompressionPolicy getCompressionPolicy()
Connection
getCompressionPolicy in interface Connectionpublic Connection.TLSPolicy getTlsPolicy()
Connection
getTlsPolicy in interface Connectionpublic boolean isCompressed()
Connection
isCompressed in interface Connectionpublic boolean isFlashClient()
Connection
isFlashClient in interface Connectionpublic void setFlashClient(boolean flashClient)
Connection
setFlashClient in interface ConnectionflashClient - true if the if the connection is a flash client.
public void setXMPPVersion(int majorVersion,
int minorVersion)
Connection
setXMPPVersion in interface ConnectionmajorVersion - the major version.minorVersion - the minor version.public void setLanaguage(String language)
Connection
setLanaguage in interface Connectionlanguage - the language code.public void setCompressionPolicy(Connection.CompressionPolicy compressionPolicy)
Connection
setCompressionPolicy in interface ConnectioncompressionPolicy - whether Compression is enabled or is disabled.public void setTlsPolicy(Connection.TLSPolicy tlsPolicy)
Connection
setTlsPolicy in interface ConnectiontlsPolicy - whether TLS is mandatory, optional or is disabled.public PacketDeliverer getPacketDeliverer()
Connection
getPacketDeliverer in interface Connection
public void startTLS(boolean clientMode,
String remoteServer,
Connection.ClientAuth authentication)
throws Exception
Connectiontrue in the clientMode parameter and the server
receiving the TLS request must pass false in the clientMode parameter.
Both servers should specify the xmpp domain of the other server in the remoteServer
parameter.
In the case of client-2-server the XMPP server must pass false in the
clientMode parameter since it will behave as the server in the TLS negotiation. The
remoteServer parameter will always be null.
startTLS in interface ConnectionclientMode - boolean indicating if this entity is a client or a server in the TLS negotiation.remoteServer - xmpp domain of the remote server or null. When null a
ClientTrustManager will be used for verifying certificates
otherwise a ServerTrustManager will be used.authentication - policy to use for authenticating the remote peer.
Exception - if an error occured while securing the connection.public void addCompression()
Connection
addCompression in interface Connectionpublic void startCompression()
Connection
startCompression in interface Connectionpublic boolean isSecure()
Connection
isSecure in interface Connectionpublic boolean validate()
Connection
validate in interface Connectionpublic void init(LocalSession session)
Connection
init in interface Connectionsession - the session that owns this connectionpublic void close()
close in interface Connection
public void registerCloseListener(ConnectionCloseListener listener,
Object handbackMessage)
Connection
registerCloseListener in interface Connectionlistener - the listener to register for events.handbackMessage - the object to send in the event notification.public void removeCloseListener(ConnectionCloseListener listener)
Connection
removeCloseListener in interface Connectionlistener - the listener to deregister for close events.public abstract void closeVirtualConnection()
|
Openfire 3.8.1 Javadoc | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||