Package tigase.socks5
Class Socks5ProxyComponent
- java.lang.Object
-
- tigase.server.BasicComponent
-
- tigase.server.AbstractMessageReceiver
-
- tigase.socks5.AbstractConnectionManager<Socks5IOService<?>>
-
- tigase.socks5.Socks5ConnectionManager
-
- tigase.socks5.Socks5ProxyComponent
-
- All Implemented Interfaces:
tigase.cluster.api.ClusteredComponentIfc,tigase.conf.Configurable,tigase.disco.XMPPService,tigase.net.IOServiceListener<Socks5IOService<?>>,tigase.server.MessageReceiver,tigase.server.ServerComponent,tigase.stats.StatisticsContainer,tigase.stats.StatisticsContainerIfc,tigase.vhosts.VHostListener
public class Socks5ProxyComponent extends Socks5ConnectionManager implements tigase.cluster.api.ClusteredComponentIfc
Class description- Version:
- Enter version here..., 13/02/16
- Author:
- Andrzej Wójcik
-
-
Field Summary
-
Fields inherited from class tigase.socks5.AbstractConnectionManager
net_buffer, NET_BUFFER_HT_PROP_VAL, NET_BUFFER_PROP_KEY, NET_BUFFER_ST_PROP_VAL, PORT_CLASS_PROP_KEY, PORT_IFC_PROP_KEY, PORT_IFC_PROP_VAL, PORT_KEY, PORT_SOCKET_PROP_KEY, PORT_TYPE_PROP_KEY, PORTS_PROP_KEY, PROP_KEY, services
-
Fields inherited from class tigase.server.AbstractMessageReceiver
HOUR, INCOMING_FILTERS_PROP_KEY, INCOMING_FILTERS_PROP_VAL, MAX_QUEUE_SIZE_PROP_KEY, MAX_QUEUE_SIZE_PROP_VAL, maxInQueueSize, maxOutQueueSize, maxQueueSize, MINUTE, OUTGOING_FILTERS_PROP_KEY, OUTGOING_FILTERS_PROP_VAL, PACKET_DELIVERY_RETRY_COUNT_PROP_KEY, SCHEDULER_THREADS_PROP_KEY, SECOND
-
Fields inherited from class tigase.server.BasicComponent
admins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, trusted, vHostManager
-
Fields inherited from interface tigase.conf.Configurable
ADMINS_PROP_KEY, AMP_CLASS_NAME, AMP_CLUST_CLASS_NAME, AUTH_DOMAIN_POOL_CLASS, AUTH_REPO_DOMAINS_PROP_KEY, AUTH_REPO_PARAMS_NODE, AUTH_REPO_POOL_CLASS, AUTH_REPO_URL_PROP_KEY, BOSH_CLUST_COMP_CLASS_NAME, BOSH_COMP_CLASS_NAME, C2S_CLUST_COMP_CLASS_NAME, C2S_COMP_CLASS_NAME, CL_COMP_CLASS_NAME, CLUSTER_CONECT, CLUSTER_CONTR_CLASS_NAME, CLUSTER_LISTEN, CLUSTER_MODE, CLUSTER_NODES, CLUSTER_NODES_PROP_KEY, COMP_PROT_CLASS_NAME, COMPONENT_ID_PROP_KEY, DEF_AMP_NAME, DEF_BOSH_NAME, DEF_C2S_NAME, DEF_CL_COMP_NAME, DEF_CLUST_CONTR_NAME, DEF_COMP_PROT_NAME, DEF_EVENTBUS_NAME, DEF_EXT_COMP_NAME, DEF_HOSTNAME_PROP_KEY, DEF_MONITOR_NAME, DEF_S2S_NAME, DEF_SM_NAME, DEF_SRECV_NAME, DEF_SSEND_NAME, DEF_STATS_NAME, DEF_VHOST_MAN_NAME, DEF_WS2S_NAME, DERBY_REPO_CLASS_PROP_VAL, DERBY_REPO_URL_PROP_VAL, DRUPAL_REPO_URL_PROP_VAL, DRUPALWP_REPO_CLASS_PROP_VAL, DUMMY_REPO_CLASS_PROP_VAL, EVENTBUS_CLASS_NAME, EXT_COMP_CLASS_NAME, GEN_ADMINS, GEN_AUTH_DB, GEN_AUTH_DB_URI, GEN_COMP_CLASS, GEN_COMP_NAME, GEN_CONF, GEN_CONFIG, GEN_CONFIG_ALL, GEN_CONFIG_COMP, GEN_CONFIG_CS, GEN_CONFIG_DEF, GEN_CONFIG_SM, GEN_DEBUG, GEN_DEBUG_PACKAGES, GEN_EXT_COMP, GEN_MAX_QUEUE_SIZE, GEN_SCRIPT_DIR, GEN_SM_PLUGINS, GEN_SREC_ADMINS, GEN_SREC_DB, GEN_SREC_DB_URI, GEN_TEST, GEN_TRUSTED, GEN_USER_DB, GEN_USER_DB_URI, GEN_USER_DB_URI_PROP_KEY, GEN_VIRT_HOSTS, HOSTNAMES_PROP_KEY, LIBRESOURCE_REPO_CLASS_PROP_VAL, LIBRESOURCE_REPO_URL_PROP_VAL, MONITOR_CLASS_NAME, MONITOR_CLUST_CLASS_NAME, MONITORING, MYSQL_REPO_CLASS_PROP_VAL, MYSQL_REPO_URL_PROP_VAL, PGSQL_REPO_CLASS_PROP_VAL, PGSQL_REPO_URL_PROP_VAL, ROUTER_COMP_CLASS_NAME, S2S_CLUST_COMP_CLASS_NAME, S2S_COMP_CLASS_NAME, SHARED_AUTH_REPO_PARAMS_PROP_KEY, SHARED_AUTH_REPO_PROP_KEY, SHARED_USER_REPO_PARAMS_PROP_KEY, SHARED_USER_REPO_PROP_KEY, SM_CLUST_COMP_CLASS_NAME, SM_COMP_CLASS_NAME, SRECV_COMP_CLASS_NAME, SSEND_COMP_CLASS_NAME, STANZA_WHITE_CHAR_ACK, STANZA_XMPP_ACK, STATS_CLASS_NAME, STRINGPREP_PROCESSOR, TIGASE_AUTH_REPO_CLASS_PROP_VAL, TIGASE_AUTH_REPO_URL_PROP_VAL, TIGASE_CUSTOM_AUTH_REPO_CLASS_PROP_VAL, TRUSTED_PROP_KEY, USER_DOMAIN_POOL_CLASS, USER_REPO_DOMAINS_PROP_KEY, USER_REPO_PARAMS_NODE, USER_REPO_POOL_CLASS, USER_REPO_POOL_SIZE, USER_REPO_POOL_SIZE_PROP_KEY, USER_REPO_URL_PROP_KEY, VHOST_MAN_CLASS_NAME, VHOST_MAN_CLUST_CLASS_NAME, WS2S_CLASS_NAME, WS2S_CLUST_CLASS_NAME, XML_REPO_CLASS_PROP_VAL, XML_REPO_URL_PROP_VAL, XMPP_STANZA_ACK
-
-
Constructor Summary
Constructors Constructor Description Socks5ProxyComponent()Constructs ...
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voideveryHour()Method descriptionprotected int[]getDefaultPorts()Returns array of default portsMap<String,Object>getDefaults(Map<String,Object> params)Method descriptionStringgetDiscoCategory()Returns disco categoryStringgetDiscoCategoryType()Returns disco category typeStringgetDiscoDescription()Returns disco descriptionprotected tigase.xmpp.JIDgetFirstClusterNode(tigase.xmpp.JID userJid)Returns first node of clusterSocks5RepositorygetSock5Repository()Return Socks5 repositoryvoidnodeConnected(String node)Handle connection of other node of clustervoidnodeDisconnected(String node)Handle disconnection of other node of clustervoidprocessPacket(tigase.server.Packet packet)Method descriptionprotected booleansendToNextNode(tigase.server.Packet packet)Send to next node if there is any availableprotected booleansendToNextNode(tigase.xmpp.JID fromNode, Set<tigase.xmpp.JID> visitedNodes, Map<String,String> data, tigase.server.Packet packet)Send to next node if there is any availablebooleanserviceStopped(Socks5IOService<?> serv)Method descriptionvoidsetClusterController(tigase.cluster.api.ClusterControllerIfc cl_controller)Method descriptionvoidsetProperties(Map<String,Object> props)Method descriptionvoidsocketDataProcessed(Socks5IOService service)Method description-
Methods inherited from class tigase.socks5.Socks5ConnectionManager
getIOServiceInstance, getStatistics, getStream, hasStream, isHighThroughput, packetsReady, registerStream, serviceStarted, tlsHandshakeCompleted, unregisterStream
-
Methods inherited from class tigase.socks5.AbstractConnectionManager
addWaitingTask, doForAllServices, everyMinute, getPorts, initializationCompleted
-
Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, clearRegexRoutings, everySecond, getMaxQueueSize, getRegexRoutings, hashCodeForPacket, isInRegexRoutings, newPacketId, processingInThreads, processingOutThreads, processingThreads, processOutPacket, processPacket, release, removeRegexRouting, schedulerThreads, setMaxQueueSize, setName, setParent, start, stop
-
Methods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, checkCommandAcl, getComponentId, getComponentInfo, getDefHostName, getDefVHostItem, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoInfo, getDiscoItems, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initBindings, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, isTrusted, isTrusted, onNodeConnected, onNodeDisconnected, processScriptCommand, removeComponentDomain, removeServiceDiscoveryItem, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceEntity
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Method Detail
-
everyHour
public void everyHour()
Method description- Overrides:
everyHourin classtigase.server.AbstractMessageReceiver
-
nodeConnected
public void nodeConnected(String node)
Handle connection of other node of cluster- Specified by:
nodeConnectedin interfacetigase.cluster.api.ClusteredComponentIfc- Overrides:
nodeConnectedin classtigase.server.BasicComponent- Parameters:
node-
-
nodeDisconnected
public void nodeDisconnected(String node)
Handle disconnection of other node of cluster- Specified by:
nodeDisconnectedin interfacetigase.cluster.api.ClusteredComponentIfc- Overrides:
nodeDisconnectedin classtigase.server.BasicComponent- Parameters:
node-
-
processPacket
public void processPacket(tigase.server.Packet packet)
Method description- Specified by:
processPacketin classtigase.server.AbstractMessageReceiver- Parameters:
packet-
-
serviceStopped
public boolean serviceStopped(Socks5IOService<?> serv)
Method description- Specified by:
serviceStoppedin interfacetigase.net.IOServiceListener<Socks5IOService<?>>- Overrides:
serviceStoppedin classSocks5ConnectionManager- Parameters:
serv-- Returns:
-
socketDataProcessed
public void socketDataProcessed(Socks5IOService service)
Method description- Overrides:
socketDataProcessedin classSocks5ConnectionManager- Parameters:
service-
-
getDefaults
public Map<String,Object> getDefaults(Map<String,Object> params)
Method description- Specified by:
getDefaultsin interfacetigase.conf.Configurable- Overrides:
getDefaultsin classAbstractConnectionManager<Socks5IOService<?>>- Parameters:
params-- Returns:
-
getDiscoCategory
public String getDiscoCategory()
Returns disco category- Overrides:
getDiscoCategoryin classtigase.server.BasicComponent- Returns:
-
getDiscoCategoryType
public String getDiscoCategoryType()
Returns disco category type- Overrides:
getDiscoCategoryTypein classtigase.server.BasicComponent- Returns:
-
getDiscoDescription
public String getDiscoDescription()
Returns disco description- Overrides:
getDiscoDescriptionin classtigase.server.BasicComponent- Returns:
-
getSock5Repository
public Socks5Repository getSock5Repository()
Return Socks5 repository- Returns:
-
setClusterController
public void setClusterController(tigase.cluster.api.ClusterControllerIfc cl_controller)
Method description- Specified by:
setClusterControllerin interfacetigase.cluster.api.ClusteredComponentIfc- Overrides:
setClusterControllerin classtigase.server.BasicComponent- Parameters:
cl_controller-
-
setProperties
public void setProperties(Map<String,Object> props) throws tigase.conf.ConfigurationException
Method description- Specified by:
setPropertiesin interfacetigase.conf.Configurable- Overrides:
setPropertiesin classAbstractConnectionManager<Socks5IOService<?>>- Parameters:
props-- Throws:
tigase.conf.ConfigurationException
-
sendToNextNode
protected boolean sendToNextNode(tigase.xmpp.JID fromNode, Set<tigase.xmpp.JID> visitedNodes, Map<String,String> data, tigase.server.Packet packet) throws tigase.util.TigaseStringprepExceptionSend to next node if there is any available- Parameters:
fromNode-visitedNodes-data-packet-- Returns:
- Throws:
tigase.util.TigaseStringprepException
-
sendToNextNode
protected boolean sendToNextNode(tigase.server.Packet packet)
Send to next node if there is any available- Parameters:
packet-- Returns:
-
getDefaultPorts
protected int[] getDefaultPorts()
Returns array of default ports- Specified by:
getDefaultPortsin classAbstractConnectionManager<Socks5IOService<?>>- Returns:
-
getFirstClusterNode
protected tigase.xmpp.JID getFirstClusterNode(tigase.xmpp.JID userJid)
Returns first node of cluster- Parameters:
userJid-- Returns:
-
-