diff --git a/router/java/src/net/i2p/router/peermanager/CapacityCalculator.java b/router/java/src/net/i2p/router/peermanager/CapacityCalculator.java index 48669acb0..35844f1b4 100644 --- a/router/java/src/net/i2p/router/peermanager/CapacityCalculator.java +++ b/router/java/src/net/i2p/router/peermanager/CapacityCalculator.java @@ -68,7 +68,7 @@ public class CapacityCalculator extends Calculator { * */ private boolean tooOld(PeerProfile profile) { - if (profile.getIsActive()) + if (profile.getIsActive(60*60*1000)) return false; else return true; diff --git a/router/java/src/net/i2p/router/peermanager/PeerProfile.java b/router/java/src/net/i2p/router/peermanager/PeerProfile.java index 168890bf6..ab6de4777 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerProfile.java +++ b/router/java/src/net/i2p/router/peermanager/PeerProfile.java @@ -83,10 +83,18 @@ public class PeerProfile { * 5 minutes) */ public boolean getIsActive() { - if ( (getSendSuccessSize().getRate(5*60*1000).getCurrentEventCount() > 0) || - (getSendSuccessSize().getRate(5*60*1000).getLastEventCount() > 0) || - (getReceiveSize().getRate(5*60*1000).getCurrentEventCount() > 0) || - (getReceiveSize().getRate(5*60*1000).getLastEventCount() > 0) ) + return getIsActive(5*60*1000); + } + + /** + * Is this peer active at the moment (sending/receiving messages within the + * given period?) + */ + public boolean getIsActive(long period) { + if ( (getSendSuccessSize().getRate(period).getCurrentEventCount() > 0) || + (getSendSuccessSize().getRate(period).getLastEventCount() > 0) || + (getReceiveSize().getRate(period).getCurrentEventCount() > 0) || + (getReceiveSize().getRate(period).getLastEventCount() > 0) ) return true; else return false;