internal void Complete(int connection)
{
var currentState = PortStates[connection];
if (IsDebug) Console.WriteLine($"{Name} Complete({connection}) [{currentState}]");
PortStates[connection] = currentState | OutClosed;
if ((currentState & (InClosed | Pushing | Pulling | OutClosed)) == 0)
Enqueue(connection);
if ((currentState & OutClosed) == 0)
CompleteConnection(Assembly.OutletOwners[connection]);
}