웹 어댑터는 외부로부터 요청을 받아 애플리케이션 코어를 호출한다.
제어 흐름은 웹 어댑터에 있는 컨트롤러에서 애플리케이션 계층에 있는 서비스로 흐른다.
애플리케이션 계층은 웹 어댑터가 통신할 수 있는 특정 포트를 제공한다.
서비스는 이 포트를 구현하고, 웹 어댑터는 포트를 호출한다.
제어 흐름을 봐서는 웹 어댑터가 유스케이스를 직접 호출해도 되는데, 왜 굳이..? 포트를..?
또한 상호작용이 많이 일어나는 애플리케이션에서! [웹 소켓]
위 그림처럼 애플리케이션이 웹 어댑터에 능동적으로 알림을 줘야한다면, 의존성을 올바른 방향으로 유지하기 위해 아웃고잉 포트를 통과해야한다! [웹 → 서비스로 바로 포트 없이 의존하고 있었다면 의존성이 순환하게 된다!]
이때 아웃고잉 포트를 구현하기 때문에, 웹 어댑터는 인커밍 어댑터인 동시에 아웃고잉 어댑터가 된다.