projects
/
sonitus.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update javadocs.
[sonitus.git]
/
src
/
main
/
java
/
net
/
pterodactylus
/
sonitus
/
data
/
filter
/
RateLimitingFilter.java
diff --git
a/src/main/java/net/pterodactylus/sonitus/data/filter/RateLimitingFilter.java
b/src/main/java/net/pterodactylus/sonitus/data/filter/RateLimitingFilter.java
index
d67604b
..
ff1a2f2
100644
(file)
--- a/
src/main/java/net/pterodactylus/sonitus/data/filter/RateLimitingFilter.java
+++ b/
src/main/java/net/pterodactylus/sonitus/data/filter/RateLimitingFilter.java
@@
-20,18
+20,18
@@
package net.pterodactylus.sonitus.data.filter;
import java.io.IOException;
import java.util.logging.Logger;
import java.io.IOException;
import java.util.logging.Logger;
+import net.pterodactylus.sonitus.data.AbstractFilter;
+import net.pterodactylus.sonitus.data.DataPacket;
+import net.pterodactylus.sonitus.data.Filter;
import net.pterodactylus.sonitus.data.Metadata;
import net.pterodactylus.sonitus.data.Metadata;
-import com.google.common.eventbus.EventBus;
-
/**
* Rate limiting filter that only passes a specified amount of data per second
/**
* Rate limiting filter that only passes a specified amount of data per second
- * from its {@link net.pterodactylus.sonitus.data.Source} to its {@link
- * net.pterodactylus.sonitus.data.Sink}.
+ * from its source to its sinks.
*
* @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
*/
*
* @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
*/
-public class RateLimitingFilter extends
Dummy
Filter {
+public class RateLimitingFilter extends
AbstractFilter implements
Filter {
/** The logger. */
private static final Logger logger = Logger.getLogger(RateLimitingFilter.class.getName());
/** The logger. */
private static final Logger logger = Logger.getLogger(RateLimitingFilter.class.getName());
@@
-48,32
+48,26
@@
public class RateLimitingFilter extends DummyFilter {
/**
* Creates a new rate limiting filter.
*
/**
* Creates a new rate limiting filter.
*
- * @param eventBus
- * The event bus
* @param name
* The name of the filter
* @param rate
* @param name
* The name of the filter
* @param rate
- * The limiting rate (in bytes/second)
*/
*/
- public RateLimitingFilter(
EventBus eventBus,
String name, int rate) {
- this(
eventBus,
name, rate, 0);
+ public RateLimitingFilter(String name, int rate) {
+ this(name, rate, 0);
}
/**
* Creates a new rate limiting filter.
*
}
/**
* Creates a new rate limiting filter.
*
- * @param eventBus
- * The event bus
* @param name
* The name of the filter
* @param rate
* The limiting rate (in bytes/second)
* @param fastStartTime
* The amount of time at the start of the filtering during which no delay
* @param name
* The name of the filter
* @param rate
* The limiting rate (in bytes/second)
* @param fastStartTime
* The amount of time at the start of the filtering during which no delay
- * will occur (in milliseconds)
*/
*/
- public RateLimitingFilter(
EventBus eventBus,
String name, int rate, long fastStartTime) {
- super(
eventBus,
name);
+ public RateLimitingFilter(String name, int rate, long fastStartTime) {
+ super(name);
this.rate = rate;
this.counter = (long) (-rate * (fastStartTime / 1000.0));
}
this.rate = rate;
this.counter = (long) (-rate * (fastStartTime / 1000.0));
}
@@
-89,10
+83,10
@@
public class RateLimitingFilter extends DummyFilter {
}
@Override
}
@Override
- public void process(
byte[] buffer
) throws IOException {
- super.process(
buffer
);
+ public void process(
DataPacket dataPacket
) throws IOException {
+ super.process(
dataPacket
);
/* delay. */
/* delay. */
- counter +=
buffer
.length;
+ counter +=
dataPacket.buffer()
.length;
long waitTime = (long) (counter / (rate / 1000.0));
while ((System.currentTimeMillis() - startTime) < waitTime) {
try {
long waitTime = (long) (counter / (rate / 1000.0));
while ((System.currentTimeMillis() - startTime) < waitTime) {
try {