public class HomeTheaterFacade { private TheaterLights lights; private Projector projector; private SoundSystem sound; private StreamingPlayer player; // Ο Constructor δέχεται τα αντικείμενα του υποσυστήματος public HomeTheaterFacade(TheaterLights lights, Projector projector, SoundSystem sound, StreamingPlayer player) { this.lights = lights; this.projector = projector; this.sound = sound; this.player = player; } // Απλοποιημένη μέθοδος για την εκκίνηση της ταινίας public void watchMovie(String movie) { System.out.println("\n--- Getting ready for the movie... ---"); lights.dim(10); projector.on(); projector.wideScreenMode(); sound.on(); sound.setVolume(20); player.on(); player.play(movie); System.out.println("--- Movie Started! ---\n"); } // Απλοποιημένη μέθοδος για τον τερματισμό public void endMovie() { System.out.println("\n--- Shuttting down Home Theater... ---"); lights.on(); projector.off(); sound.off(); player.stop(); player.off(); System.out.println("--- Done. ---\n"); } }