Changeset 0369d32 for apps


Ignore:
Timestamp:
Nov 15, 2018 4:45:21 PM (20 months ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
54a1609
Parents:
62c712c
Message:

Wizard: Hook test results to form
More fixes and cleanups

Location:
apps/routerconsole
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • apps/routerconsole/java/src/com/vuze/plugins/mlab/MLabRunner.java

    r62c712c r0369d32  
    8888    public ToolRun runNDT(final ToolListener listener) {
    8989        if (!_running.compareAndSet(false, true)) {
     90            listener.reportSummary("Test already running");
     91            listener.reportDetail("Test already running");
    9092            _log.warn("Test already running");
    9193            return null;
     
    108110                                public void reportSummary(String str) {
    109111                                    str = str.trim();
    110                                     log( str );
    111                                     if ( listener != null ){
    112                                         if ( !str.startsWith( "Click" )){
    113                                             listener.reportSummary( str );
     112                                    log(str);
     113                                    if (listener != null){
     114                                        if (!str.startsWith("Click")) {
     115                                            listener.reportSummary(str);
    114116                                        }
    115117                                    }
     
    236238                            result_str =     
    237239                                "Completed: up=" + DataHelper.formatSize2Decimal(up_bps, false) +
    238                                 ", down=" + DataHelper.formatSize2Decimal(down_bps, false);
     240                                "Bps, down=" + DataHelper.formatSize2Decimal(down_bps, false) + "Bps";
    239241                        }
    240242                       
  • apps/routerconsole/java/src/net/i2p/router/web/helpers/ConfigNetHelper.java

    r62c712c r0369d32  
    376376        int irateKBps = _context.bandwidthLimiter().getInboundKBytesPerSecond();
    377377        int orateKBps = _context.bandwidthLimiter().getOutboundKBytesPerSecond();
    378         double pct = _context.router().getSharePercentage();
    379378        if (irateKBps < 0 || orateKBps < 0)
    380379            return DEFAULT_SHARE_KBPS;
     380        double pct = _context.router().getSharePercentage();
    381381        return (int) (pct * Math.min(irateKBps, orateKBps));
    382382    }
  • apps/routerconsole/java/src/net/i2p/router/web/helpers/WizardHelper.java

    r62c712c r0369d32  
    2020
    2121    public static final String PROP_COMPLETE = "routerconsole.welcomeWizardComplete";
     22    // scale bw test results by this for limiter settings
     23    public static final float BW_SCALE = 0.75f;
     24    // KBps
     25    private static final float MIN_DOWN_BW = 32.0f;
     26    private static final float MIN_UP_BW = 12.0f;
    2227
    2328    // session scope, but it's an underlying singleton
     
    131136
    132137    /**
     138     * To populate form with.
     139     * Uses the test result if available, else the current setting
     140     * Adapted from ConfigNetHelper.
     141     * @return decimal KBytes/sec
     142     */
     143    public String getInboundBurstRate() {
     144        float bw;
     145        long result = getDownBandwidth();
     146        if (result > 0) {
     147            bw = Math.max(MIN_DOWN_BW, BW_SCALE * result / 1000f);
     148        } else {
     149            bw = _context.bandwidthLimiter().getInboundBurstKBytesPerSecond() * 1.024f;
     150        }
     151        return Integer.toString(Math.round(bw));
     152    }
     153
     154    /**
     155     * To populate form with.
     156     * Uses the test result if available, else the current setting
     157     * Adapted from ConfigNetHelper.
     158     * @return decimal KBytes/sec
     159     */
     160    public String getOutboundBurstRate() {
     161        float bw;
     162        long result = getUpBandwidth();
     163        if (result > 0) {
     164            bw = Math.max(MIN_UP_BW, BW_SCALE * result / 1000f);
     165        } else {
     166            bw = _context.bandwidthLimiter().getOutboundBurstKBytesPerSecond() * 1.024f;
     167        }
     168        return Integer.toString(Math.round(bw));
     169    }
     170
     171    /**
     172     * Copied from ConfigNetHelper.
     173     * @return decimal
     174     */
     175    public String getInboundBurstRateBits() {
     176        return kbytesToBits(_context.bandwidthLimiter().getInboundBurstKBytesPerSecond());
     177    }
     178
     179    /**
     180     * Copied from ConfigNetHelper.
     181     * @return decimal
     182     */
     183    public String getOutboundBurstRateBits() {
     184        return kbytesToBits(_context.bandwidthLimiter().getOutboundBurstKBytesPerSecond());
     185    }
     186
     187    /**
     188     * Copied from ConfigNetHelper.
     189     * @return decimal
     190     */
     191    public String getShareRateBits() {
     192        return kbytesToBits(getShareBandwidth());
     193    }
     194
     195    /**
     196     * Copied from ConfigNetHelper.
     197     * @param kbytes binary K
     198     * @return decimal
     199     */
     200    private String kbytesToBits(float kbytes) {
     201        return DataHelper.formatSize2Decimal((long) (kbytes * (8 * 1024))) + _t("bits per second") +
     202               "; " +
     203               _t("{0}Bytes per month maximum", DataHelper.formatSize2Decimal((long) (kbytes * (1024L * 60 * 60 * 24 * 31))));
     204    }
     205
     206    /**
     207     *  Adapted from ConfigNetHelper.
     208     *  @return in binary KBytes per second
     209     */
     210    public int getShareBandwidth() {
     211        float irateKBps;
     212        float orateKBps;
     213        long result = getDownBandwidth();
     214        if (result > 0) {
     215            irateKBps = Math.max(MIN_DOWN_BW, BW_SCALE * result / 1024f);
     216        } else {
     217            irateKBps = _context.bandwidthLimiter().getInboundKBytesPerSecond();
     218        }
     219        result = getUpBandwidth();
     220        if (result > 0) {
     221            orateKBps = Math.max(MIN_UP_BW, BW_SCALE * result / 1024f);
     222        } else {
     223            orateKBps = _context.bandwidthLimiter().getOutboundKBytesPerSecond();
     224        }
     225        if (irateKBps < 0 || orateKBps < 0)
     226            return ConfigNetHelper.DEFAULT_SHARE_KBPS;
     227        double pct = _context.router().getSharePercentage();
     228        return (int) (pct * Math.min(irateKBps, orateKBps));
     229    }
     230
     231    /**
    133232     *  Start the test. Called from the Handler.
    134233     *  @return success
     
    138237            return false;
    139238        }
    140         _listener = new TestListener();
    141         _runner = _mlab.runNDT(_listener);
    142         if (_runner != null) {
    143             return true;
    144         } else {
     239        TestListener lsnr = new TestListener();
     240        _runner = _mlab.runNDT(lsnr);
     241        boolean rv = _runner != null;
     242        if (!rv) {
    145243            Map<String, Object> map = new HashMap<String, Object>(2);
    146             _listener.complete(map);
    147             return false;
    148         }
     244            lsnr.complete(map);
     245        }
     246        // replace the old listener
     247        _listener = lsnr;
     248        return rv;
    149249    }
    150250
     
    157257            return false;
    158258        }
    159         if (_runner != null) {
     259        boolean rv = _runner != null;
     260        if (rv) {
    160261            _runner.cancel();
    161262            _runner = null;
    162             return true;
    163         } else {
    164             return false;
    165         }
     263        }
     264        return rv;
    166265    }
    167266
  • apps/routerconsole/jsp/welcome.jsp

    r62c712c r0369d32  
    161161<tr><td><%=intl._t("Completion status")%></td><td><%=wizhelper.getCompletionStatus()%></td></tr>
    162162<tr><td><%=intl._t("Details")%></td><td><%=wizhelper.getDetailStatus()%></td></tr>
     163<tr><td><%=intl._t("Downstream Bandwidth")%></td><td><%=net.i2p.data.DataHelper.formatSize2Decimal(wizhelper.getDownBandwidth())%>Bps</td></tr>
    163164<tr><td><%=intl._t("Upstream Bandwidth")%></td><td><%=net.i2p.data.DataHelper.formatSize2Decimal(wizhelper.getUpBandwidth())%>Bps</td></tr>
    164 <tr><td><%=intl._t("Downstream Bandwidth")%></td><td><%=net.i2p.data.DataHelper.formatSize2Decimal(wizhelper.getDownBandwidth())%>Bps</td></tr>
     165<tr><td><%=intl._t("Share of Bandwidth for I2P")%></td><td><%=Math.round(net.i2p.router.web.helpers.WizardHelper.BW_SCALE * 100)%>%</td></tr>
    165166</table>
    166167<h3><%=intl._t("Bandwidth Configuration")%></h3>
     
    169170<%=intl._t("I2P will work best if you configure your rates to match the speed of your internet connection.")%>
    170171</td></tr>
    171 <tr><td><input style="text-align: right; width: 5em;" name="inboundrate" type="text" size="5" maxlength="5" value="<jsp:getProperty name="nethelper" property="inboundBurstRate" />" >
     172<tr><td><input style="text-align: right; width: 5em;" name="inboundrate" type="text" size="5" maxlength="5" value="<jsp:getProperty name="wizhelper" property="inboundBurstRate" />" >
    172173<%=intl._t("KBps In")%>
    173 </td><td>(<jsp:getProperty name="nethelper" property="inboundBurstRateBits" />)</td>
     174</td><td>(<jsp:getProperty name="wizhelper" property="inboundBurstRateBits" />)</td>
    174175</tr><tr>
    175176<%-- display burst, set standard, handler will fix up --%>
    176 <td><input style="text-align: right; width: 5em;" name="outboundrate" type="text" size="5" maxlength="5" value="<jsp:getProperty name="nethelper" property="outboundBurstRate" />" >
     177<td><input style="text-align: right; width: 5em;" name="outboundrate" type="text" size="5" maxlength="5" value="<jsp:getProperty name="wizhelper" property="outboundBurstRate" />" >
    177178<%=intl._t("KBps Out")%>
    178 </td><td>(<jsp:getProperty name="nethelper" property="outboundBurstRateBits" />)</td>
     179</td><td>(<jsp:getProperty name="wizhelper" property="outboundBurstRateBits" />)</td>
    179180</tr><tr>
    180181<td><jsp:getProperty name="nethelper" property="sharePercentageBox" /> <%=intl._t("Share")%></td>
    181 <td>(<jsp:getProperty name="nethelper" property="shareRateBits" />)
     182<td>(<jsp:getProperty name="wizhelper" property="shareRateBits" />)
    182183</td></tr>
    183184<tr><td class="infohelp" colspan="2">
    184 <% int share = Math.round(nethelper.getShareBandwidth() * 1.024f);
     185<% int share = Math.round(wizhelper.getShareBandwidth() * 1.024f);
    185186    if (share < 12) {
    186187        out.print("<b>");
Note: See TracChangeset for help on using the changeset viewer.