/* | |
* Copyright 2015 Open Networking Laboratory | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software | |
* distributed under the License is distributed on an "AS IS" BASIS, | |
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
* See the License for the specific language governing permissions and | |
* limitations under the License. | |
*/ | |
package org.onosproject.net.statistic; | |
import org.onosproject.net.ConnectPoint; | |
/** | |
* Summary Load classified by flow live type. | |
*/ | |
public class SummaryFlowEntryWithLoad { | |
private ConnectPoint cp; | |
private Load totalLoad; | |
private Load immediateLoad; | |
private Load shortLoad; | |
private Load midLoad; | |
private Load longLoad; | |
private Load unknownLoad; | |
/** | |
* Creates a new summary flow entry having load for the given connect point and total load. | |
* | |
* @param cp connect point | |
* @param totalLoad total load | |
*/ | |
public SummaryFlowEntryWithLoad(ConnectPoint cp, Load totalLoad) { | |
this.cp = cp; | |
this.totalLoad = totalLoad; | |
this.immediateLoad = new DefaultLoad(); | |
this.shortLoad = new DefaultLoad(); | |
this.midLoad = new DefaultLoad(); | |
this.longLoad = new DefaultLoad(); | |
this.unknownLoad = new DefaultLoad(); | |
} | |
/** | |
* Creates a new summary flow entry having load for the given connect point | |
* and total, immediate, short, mid, and long load. | |
* | |
* @param cp connect point | |
* @param totalLoad total load | |
* @param immediateLoad immediate load | |
* @param shortLoad short load | |
* @param midLoad mid load | |
* @param longLoad long load | |
*/ | |
public SummaryFlowEntryWithLoad(ConnectPoint cp, | |
Load totalLoad, Load immediateLoad, Load shortLoad, Load midLoad, Load longLoad) { | |
this.cp = cp; | |
this.totalLoad = totalLoad; | |
this.immediateLoad = immediateLoad; | |
this.shortLoad = shortLoad; | |
this.midLoad = midLoad; | |
this.longLoad = longLoad; | |
this.unknownLoad = new DefaultLoad(); | |
} | |
/** | |
* Creates a new summary flow entry having load for the given connect point | |
* and total, immediate, short, mid, long, and unknown load. | |
* | |
* @param cp connect point | |
* @param totalLoad total load | |
* @param immediateLoad immediate load | |
* @param shortLoad short load | |
* @param midLoad mid load | |
* @param longLoad long load | |
* @param unknownLoad long load | |
*/ | |
public SummaryFlowEntryWithLoad(ConnectPoint cp, | |
Load totalLoad, Load immediateLoad, | |
Load shortLoad, Load midLoad, Load longLoad, Load unknownLoad) { | |
this.cp = cp; | |
this.totalLoad = totalLoad; | |
this.immediateLoad = immediateLoad; | |
this.shortLoad = shortLoad; | |
this.midLoad = midLoad; | |
this.longLoad = longLoad; | |
this.unknownLoad = unknownLoad; | |
} | |
/** | |
* Returns connect point. | |
* | |
* @return connect point | |
*/ | |
public ConnectPoint connectPoint() { | |
return cp; | |
} | |
/** | |
* Returns total load of connect point. | |
* | |
* @return total load | |
*/ | |
public Load totalLoad() { | |
return totalLoad; | |
} | |
/** | |
* Returns immediate load of connect point. | |
* | |
* @return immediate load | |
*/ | |
public Load immediateLoad() { | |
return immediateLoad; | |
} | |
/** | |
* Returns short load of connect point. | |
* | |
* @return short load | |
*/ | |
public Load shortLoad() { | |
return shortLoad; | |
} | |
/** | |
* Returns mid load of connect point. | |
* | |
* @return mid load | |
*/ | |
public Load midLoad() { | |
return midLoad; | |
} | |
/** | |
* Returns long load of connect point. | |
* | |
* @return long load | |
*/ | |
public Load longLoad() { | |
return longLoad; | |
} | |
/** | |
* Returns unknown load of connect point. | |
* | |
* @return unknown load | |
*/ | |
public Load unknownLoad() { | |
return unknownLoad; | |
} | |
} |