@Override public String toString() { return "[" + con.getName() + "] -> UpstreamBridge"; } }
@Override public String toString() { return "[" + user.getName() + "] <-> ServerConnector [" + target.getName() + "]"; } }
public void addConnection(UserConnection con) { connectionLock.writeLock().lock(); try { connections.put( con.getName(), con ); connectionsByUUID.put( con.getUniqueId(), con ); connectionsByOfflineUUID.put( con.getPendingConnection().getOfflineId(), con ); } finally { connectionLock.writeLock().unlock(); } }
public void removeConnection(UserConnection con) { connectionLock.writeLock().lock(); try { // TODO See #1218 if ( connections.get( con.getName() ) == con ) { connections.remove( con.getName() ); connectionsByUUID.remove( con.getUniqueId() ); connectionsByOfflineUUID.remove( con.getPendingConnection().getOfflineId() ); } } finally { connectionLock.writeLock().unlock(); } }
@Override public String toString() { return "[" + con.getName() + "] <-> DownstreamBridge <-> [" + server.getInfo().getName() + "]"; } }
public void disconnect0(final BaseComponent... reason) { if ( !ch.isClosing() ) { bungee.getLogger().log( Level.INFO, "[{0}] disconnected with: {1}", new Object[] { getName(), BaseComponent.toLegacyText( reason ) } ); ch.delayedClose( new Kick( ComponentSerializer.toString( reason ) ) ); if ( server != null ) { server.setObsolete( true ); server.disconnect( "Quitting" ); } } }
@Override public void connected(ChannelWrapper channel) throws Exception { this.ch = channel; this.handshakeHandler = new ForgeServerHandler( user, ch, target ); Handshake originalHandshake = user.getPendingConnection().getHandshake(); Handshake copiedHandshake = new Handshake( originalHandshake.getProtocolVersion(), originalHandshake.getHost(), originalHandshake.getPort(), 2 ); if ( BungeeCord.getInstance().config.isIpForward() ) { String newHost = copiedHandshake.getHost() + "\00" + user.getAddress().getHostString() + "\00" + user.getUUID(); LoginResult profile = user.getPendingConnection().getLoginProfile(); if ( profile != null && profile.getProperties() != null && profile.getProperties().length > 0 ) { newHost += "\00" + BungeeCord.getInstance().gson.toJson( profile.getProperties() ); } copiedHandshake.setHost( newHost ); } else if ( !user.getExtraDataInHandshake().isEmpty() ) { // Only restore the extra data if IP forwarding is off. // TODO: Add support for this data with IP forwarding. copiedHandshake.setHost( copiedHandshake.getHost() + user.getExtraDataInHandshake() ); } channel.write( copiedHandshake ); channel.setProtocol( Protocol.LOGIN ); channel.write( new LoginRequest( user.getName() ) ); }
@Override public String toString() { return "[" + con.getAddress() + "|" + con.getName() + "] -> UpstreamBridge"; } }
public void addConnection(UserConnection con) { connectionLock.writeLock().lock(); try { connections.put( con.getName(), con ); connectionsByOfflineUUID.put( con.getPendingConnection().getOfflineId(), con ); } finally { connectionLock.writeLock().unlock(); } }
public void removeConnection(UserConnection con) { connectionLock.writeLock().lock(); try { // TODO See #1218 if ( connections.get( con.getName() ) == con ) { connections.remove( con.getName() ); connectionsByOfflineUUID.remove( con.getPendingConnection().getOfflineId() ); } } finally { connectionLock.writeLock().unlock(); } }
@Override public String toString() { return "[" + user.getAddress() + "|" + user.getName() + "] <-> ServerConnector [" + target.getName() + "]"; } }
@Override public String toString() { return "[" + con.getAddress() + "|" + con.getName() + "] <-> DownstreamBridge <-> [" + server.getInfo().getName() + "]"; } }
public void disconnect0(final BaseComponent... reason) { if ( !ch.isClosed() ) { bungee.getLogger().log( Level.INFO, "[{0}] disconnected with: {1}", new Object[] { getName(), BaseComponent.toLegacyText( reason ) } ); ch.close(new Kick(ComponentSerializer.toString( reason ))); if ( server != null ) { server.disconnect( "Quitting" ); } } }