blob: 6affab8a21e5a8380a7540d93628948acbd4ac5f [file] [log] [blame]
package org.projectfloodlight.openflow.types;
/**
* Represents the speed of a port
*/
public enum PortSpeed {
/** no speed set */
SPEED_NONE(0),
SPEED_10MB(10),
SPEED_100MB(100),
SPEED_1GB(1_000),
SPEED_10GB(10_000),
SPEED_40GB(40_000),
SPEED_100GB(100_000),
SPEED_1TB(1_000_000);
private long speedInBps;
private PortSpeed(int speedInMbps) {
this.speedInBps = speedInMbps * 1000L*1000L;
}
public long getSpeedBps() {
return this.speedInBps;
}
public static PortSpeed max(PortSpeed s1, PortSpeed s2) {
return (s1.getSpeedBps() > s2.getSpeedBps()) ? s1 : s2;
}
public static PortSpeed min(PortSpeed s1, PortSpeed s2) {
return (s1.getSpeedBps() < s2.getSpeedBps()) ? s1 : s2;
}
}