{
UnsignedInteger handle = flow.getHandle();
LinkEndpoint endpoint = handle == null ? null : _remoteLinkEndpoints.get(handle);
final UnsignedInteger nextOutgoingId = flow.getNextIncomingId() == null ? _initialOutgoingId : flow.getNextIncomingId();
int limit = (nextOutgoingId.intValue() + flow.getIncomingWindow().intValue());
_outgoingSessionCredit = UnsignedInteger.valueOf(limit - _nextOutgoingTransferId.intValue());
if(endpoint != null)
{
endpoint.receiveFlow( flow );