blob: 0a191d42e1272ccae0706141e20a0fbeb0121d18 [file] [log] [blame]
/*
* Copyright 2015-present 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.bgp.controller.impl;
import org.onosproject.bgp.controller.BgpPacketStats;
/**
* A representation of a packet context which allows any provider
* to view a packet in event, but may block the response to the
* event if blocked has been called. This packet context can be used
* to react to the packet in event with a packet out.
*/
public class BgpPacketStatsImpl implements BgpPacketStats {
private int inPacketCount;
private int outPacketCount;
private int wrongPacketCount;
private long time;
/**
* Resets parameter.
*/
public BgpPacketStatsImpl() {
this.inPacketCount = 0;
this.outPacketCount = 0;
this.wrongPacketCount = 0;
this.time = 0;
}
/**
* Get the outgoing packet count number.
*
* @return packet count
*/
public int outPacketCount() {
return outPacketCount;
}
/**
* Get the incoming packet count number.
*
* @return packet count
*/
public int inPacketCount() {
return inPacketCount;
}
/**
* Get the wrong packet count number.
*
* @return packet count
*/
public int wrongPacketCount() {
return wrongPacketCount;
}
/**
* Increments the received packet counter.
*/
public void addInPacket() {
this.inPacketCount++;
}
/**
* Increments the sent packet counter.
*/
public void addOutPacket() {
this.outPacketCount++;
}
/**
* Increments the sent packet counter by specified value.
*
* @param value of no of packets sent
*/
public void addOutPacket(int value) {
this.outPacketCount = this.outPacketCount + value;
}
/**
* Increments the wrong packet counter.
*/
public void addWrongPacket() {
this.wrongPacketCount++;
}
/**
* Resets wrong packet count.
*/
public void resetWrongPacket() {
this.wrongPacketCount = 0;
}
/**
* Get the time.
*
* @return time
*/
public long getTime() {
return this.time;
}
/**
* Sets the time.
*
* @param time value to set
*/
public void setTime(long time) {
this.time = time;
}
}