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.kernel.beans.config.ConfigurationChangedAware,tigase.kernel.beans.Initializable,tigase.kernel.beans.RegistrarBean,tigase.net.IOServiceListener<Socks5IOService<?>>,tigase.server.MessageReceiver,tigase.server.PacketWriterWithTimeout,tigase.server.ServerComponent,tigase.stats.StatisticsContainer,tigase.stats.StatisticsContainerIfc,tigase.vhosts.VHostListener
@Bean(name="socks5", parent=tigase.kernel.core.Kernel.class, active=false) @ConfigType(DefaultMode) public class Socks5ProxyComponent extends Socks5ConnectionManager implements tigase.cluster.api.ClusteredComponentIfc, tigase.kernel.beans.InitializableClass description- Version:
- Enter version here..., 13/02/16
- Author:
- Andrzej Wójcik
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class tigase.socks5.AbstractConnectionManager
AbstractConnectionManager.PortConfigBean, AbstractConnectionManager.PortsConfigBean
-
-
Field Summary
-
Fields inherited from class tigase.socks5.AbstractConnectionManager
net_buffer, NET_BUFFER_HT_PROP_VAL, 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, scriptEngineManager, 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_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, 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()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voideveryHour()protected int[]getDefaultPorts()Returns array of default portsStringgetDiscoCategory()Returns disco categoryStringgetDiscoCategoryType()Returns disco category typeStringgetDiscoDescription()Returns disco descriptionprotected tigase.xmpp.jid.JIDgetFirstClusterNode(tigase.xmpp.jid.JID userJid)Returns first node of clusterSocks5RepositorygetSock5Repository()Return Socks5 repositoryvoidinitialize()voidnodeConnected(String node)Handle connection of other node of clustervoidnodeDisconnected(String node)Handle disconnection of other node of clustervoidprocessPacket(tigase.server.Packet packet)protected booleansendToNextNode(tigase.server.Packet packet)Send to next node if there is any availableprotected booleansendToNextNode(tigase.xmpp.jid.JID fromNode, Set<tigase.xmpp.jid.JID> visitedNodes, Map<String,String> data, tigase.server.Packet packet)Send to next node if there is any availablebooleanserviceStopped(Socks5IOService<?> serv)Handle service after stoppingvoidsetClusterController(tigase.cluster.api.ClusterControllerIfc cl_controller)voidsocketDataProcessed(Socks5IOService service)Process stream after each time data from socket is processed-
Methods inherited from class tigase.socks5.Socks5ConnectionManager
getIOServiceInstance, getStatistics, getStream, hasStream, isHighThroughput, packetsReady, registerStream, serviceStarted, tlsHandshakeCompleted, unregisterStream
-
Methods inherited from class tigase.socks5.AbstractConnectionManager
connectWaitingTasks, doForAllServices, everyMinute, getPorts, initializationCompleted, register, releaseListener, start, stop, unregister
-
Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, beanConfigurationChanged, clearRegexRoutings, everySecond, getMaxQueueSize, getRegexRoutings, getResourceForPacketWithTimeout, hashCodeForPacket, isInRegexRoutings, newPacketId, processingInThreads, processingOutThreads, processOutPacket, processPacket, release, removeRegexRouting, schedulerThreads, setCompId, setIncomingFilters, setName, setOutogingFilters, setParent, setSchedulerThreads_size
-
Methods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, canCallCommand, checkCommandAcl, checkCommandAcl, createScriptEngineManager, getComponentId, getComponentInfo, getDefaults, getDefHostName, getDefVHostItem, getDiscoExtensionsForm, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getServiceEntityCaps, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initBindings, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, isTrusted, isTrusted, onNodeConnected, onNodeDisconnected, processScriptCommand, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, setCommandsACL, setProperties, setScriptsBaseDir, 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()
- 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)
- Specified by:
processPacketin classtigase.server.AbstractMessageReceiver
-
serviceStopped
public boolean serviceStopped(Socks5IOService<?> serv)
Description copied from class:AbstractConnectionManagerHandle service after stopping- Specified by:
serviceStoppedin interfacetigase.net.IOServiceListener<Socks5IOService<?>>- Overrides:
serviceStoppedin classSocks5ConnectionManager
-
socketDataProcessed
public void socketDataProcessed(Socks5IOService service)
Description copied from class:Socks5ConnectionManagerProcess stream after each time data from socket is processed- Overrides:
socketDataProcessedin classSocks5ConnectionManager- Parameters:
service- is aSocks5IOService
-
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:
-
initialize
public void initialize()
- Specified by:
initializein interfacetigase.kernel.beans.Initializable- Overrides:
initializein classtigase.server.BasicComponent
-
setClusterController
public void setClusterController(tigase.cluster.api.ClusterControllerIfc cl_controller)
- Specified by:
setClusterControllerin interfacetigase.cluster.api.ClusteredComponentIfc- Overrides:
setClusterControllerin classtigase.server.BasicComponent
-
sendToNextNode
protected boolean sendToNextNode(tigase.xmpp.jid.JID fromNode, Set<tigase.xmpp.jid.JID> visitedNodes, Map<String,String> data, tigase.server.Packet packet) throws tigase.util.stringprep.TigaseStringprepExceptionSend to next node if there is any available- Parameters:
fromNode-visitedNodes-data-packet-- Returns:
- Throws:
tigase.util.stringprep.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.JID getFirstClusterNode(tigase.xmpp.jid.JID userJid)
Returns first node of cluster- Parameters:
userJid-- Returns:
-
-