void notifyConnected () { if (INFO) { SocketChannel socketChannel = tcp.socketChannel; if (socketChannel != null) { Socket socket = tcp.socketChannel.socket(); if (socket != null) { InetSocketAddress remoteSocketAddress = (InetSocketAddress)socket.getRemoteSocketAddress(); if (remoteSocketAddress != null) info("kryonet", this + " connected: " + remoteSocketAddress.getAddress()); } } } Listener[] listeners = this.listeners; for (int i = 0, n = listeners.length; i < n; i++) listeners[i].connected(this); }
if (INFO && connections.length > 0) info("kryonet", "Closing server connections..."); for (int i = 0, n = connections.length; i < n; i++) connections[i].close(); try { serverChannel.close(); if (INFO) info("kryonet", "Server closed."); } catch (IOException ex) { if (DEBUG) debug("kryonet", "Unable to close server.", ex);
public synchronized void write (Connection connection, ByteBuffer buffer, Object object) { byteBufferOutputStream.setByteBuffer(buffer); int start = buffer.position(); try { json.writeValue(object, Object.class, null); writer.flush(); } catch (Exception ex) { throw new JsonException("Error writing object: " + object, ex); } if (INFO && logging) { int end = buffer.position(); buffer.position(start); buffer.limit(end); int length = end - start; if (logBuffer.length < length) logBuffer = new byte[length]; buffer.get(logBuffer, 0, length); buffer.position(end); buffer.limit(buffer.capacity()); String message = new String(logBuffer, 0, length); if (prettyPrint) message = json.prettyPrint(message); info("Wrote: " + message); } }
/** Broadcasts a UDP message on the LAN to discover any running servers. The address of the first server to respond is * returned. * @param udpPort The UDP port of the server. * @param timeoutMillis The number of milliseconds to wait for a response. * @return the first server found, or null if no server responded. */ public InetAddress discoverHost (int udpPort, int timeoutMillis) { DatagramSocket socket = null; try { socket = new DatagramSocket(); broadcast(udpPort, socket); socket.setSoTimeout(timeoutMillis); DatagramPacket packet = discoveryHandler.onRequestNewDatagramPacket(); try { socket.receive(packet); } catch (SocketTimeoutException ex) { if (INFO) info("kryonet", "Host discovery timed out."); return null; } if (INFO) info("kryonet", "Discovered server: " + packet.getAddress()); discoveryHandler.onDiscoveredHost(packet, getKryo()); return packet.getAddress(); } catch (IOException ex) { if (ERROR) error("kryonet", "Host discovery failed.", ex); return null; } finally { if (socket != null) socket.close(); discoveryHandler.onFinally(); } }
/** @param udpPort May be null. */ public void bind (InetSocketAddress tcpPort, InetSocketAddress udpPort) throws IOException { close(); synchronized (updateLock) { selector.wakeup(); try { serverChannel = selector.provider().openServerSocketChannel(); serverChannel.socket().bind(tcpPort); serverChannel.configureBlocking(false); serverChannel.register(selector, SelectionKey.OP_ACCEPT); if (DEBUG) debug("kryonet", "Accepting connections on port: " + tcpPort + "/TCP"); if (udpPort != null) { udp = new UdpConnection(serialization, objectBufferSize); udp.bind(selector, udpPort); if (DEBUG) debug("kryonet", "Accepting connections on port: " + udpPort + "/UDP"); } } catch (IOException ex) { close(); throw ex; } } if (INFO) info("kryonet", "Server opened."); }
public void close () { boolean wasConnected = isConnected; isConnected = false; tcp.close(); if (udp != null && udp.connectedAddress != null) udp.close(); if (wasConnected) { notifyDisconnected(); if (INFO) info("kryonet", this + " disconnected."); } setConnected(false); }
public void fileSaveError(String fileName) { Log.info(String.format("Unable to save '%s'\n", fileName)); } }
public void fileSaveSuccess(String fileName) { Log.info(String.format("Script '%s' saved with success!\n", fileName)); }
@Override public void connected(int connectionId) { establishedConnections++; Log.info("1 connection connected from " + marshal.getClass().getSimpleName()); }
@Override public void disconnected(int connectionId) { establishedConnections--; Log.info("1 connection disconnected from " + marshal.getClass().getSimpleName()); }
/* package-private */ MicroStrainIMUHandle(String name, Integer id) { this.name = name; Log.info("Starting listener for IMU " + name); try { imuListener = MicrostrainUDPPacketListener.createRealtimeListener(ValkyriePriorityParameters.IMU_PRIORITY, id); } catch (IOException e) { throw new RuntimeException("Cannot create listener for IMU " + name, e); } }
public void reopen() { if( open ) { return; } if( !eightyFS.isReopenable() ) { throw new IllegalArgumentException( "eightfs is not reopenable" ); } open = true; eightyFS.reopen(); Log.info( "reopened " + this ); }
@Override public void connected(Connection connection) { Log.info("KryonetListenerAdapter: connected"); listener.connected(connection.getID()); }
@Override public void close() throws IOException { if( !open ) { return; } if( !eightyFS.isClosable() ) { throw new UnsupportedOperationException( "FileSystem " + this + " can not be closed" ); } eightyFS.onClose(); open = false; closeWithMe.close(); Log.info( "closed " + this ); }
/** Establish connection / prepare to listen. */ @Override public void start() { state = MarshalState.STARTING; registerDictionary(); endpoint.addListener(listener); // can be safely called more than once. Log.info("add listener to " + this.getClass().getSimpleName() + " " + listener); endpoint.start(); connectEndpoint(); }
public void close () { boolean wasConnected = isConnected; isConnected = false; tcp.close(); if (udp != null && udp.connectedAddress != null) udp.close(); if (wasConnected) { notifyDisconnected(); if (INFO) info("kryonet", this + " disconnected."); } setConnected(false); }
public void close() { boolean wasConnected = isConnected; isConnected = false; tcp.close(true); if ((udp != null) && (udp.connectedAddress != null)) { udp.close(); } if (wasConnected) { notifyDisconnected(); if (INFO) { info("kryonet", this + " disconnected."); } } setConnected(false); }
private void findVersionVulnerable(JsLibrary lib,String version,List<JsLibraryResult> resultsFound,String regexRequest,String regexResponse) { //Look for vulnerability affecting this specific version.. for(JsVulnerability vuln : lib.getVulnerabilities()) { if(CompareVersionUtil.isUnder(version,vuln.getBelow())) { if(vuln.getAtOrAbove() == null || CompareVersionUtil.atOrAbove(version,vuln.getAtOrAbove())) { Log.info(String.format("Vulnerability found: %s below %s", lib.getName(), vuln.getBelow())); resultsFound.add(new JsLibraryResult(lib,vuln,version,regexRequest,regexResponse)); } } } } }