GOF facade pattern