public DataStructure createDataStructure() throws DataFormatException { BandwidthLimitsMessage msg = new BandwidthLimitsMessage(10240, 1024); return msg; } public DataStructure createStructureToRead() { return new BandwidthLimitsMessage(); }
public void handleMessage(I2CPMessage message, I2PSessionImpl session) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Handle message " + message); BandwidthLimitsMessage msg = (BandwidthLimitsMessage) message; session.bwReceived(msg.getLimits()); } }
public DataStructure createStructureToRead() { return new BandwidthLimitsMessage(); } }
/** * Send dummy limits */ @Override protected void handleGetBWLimits(GetBandwidthLimitsMessage message) { int limit = 1024*1024; BandwidthLimitsMessage msg = new BandwidthLimitsMessage(limit, limit); try { _runner.doSend(msg); } catch (I2CPMessageException ime) { ime.printStackTrace(); } } }
/** * Divide router limit by 1.75 for overhead. * This could someday give a different answer to each client. * But it's not enforced anywhere. */ protected void handleGetBWLimits(GetBandwidthLimitsMessage message) { if (_log.shouldLog(Log.INFO)) _log.info("Got BW Limits request"); int in = _context.bandwidthLimiter().getInboundKBytesPerSecond() * 4 / 7; int out = _context.bandwidthLimiter().getOutboundKBytesPerSecond() * 4 / 7; BandwidthLimitsMessage msg = new BandwidthLimitsMessage(in, out); try { _runner.doSend(msg); } catch (I2CPMessageException ime) { if (_log.shouldLog(Log.WARN)) _log.warn("Error writing bw limits msg", ime); } }
return new GetBandwidthLimitsMessage(); case BandwidthLimitsMessage.MESSAGE_TYPE: return new BandwidthLimitsMessage(); case HostLookupMessage.MESSAGE_TYPE: return new HostLookupMessage();