// Path: driver/common-driver/src/main/java/com/github/zutherb/buildlight/common/driver/core/Color.java
// public enum Color {
//     RED,
//     YELLOW,
//     GREEN;
// 
//     public static Color valueOfIgnoreCaseOrNull(String name) {
//         for (Color color : Color.values()) {
//             if (color.name().equalsIgnoreCase(name)) {
//                 return color;
//             }
//         }
//         return null;
//     }
// }
// 
// Path: driver/common-driver/src/main/java/com/github/zutherb/buildlight/common/driver/core/TrafficLight.java
// public interface TrafficLight {
//     static final String MESSAGE_SWITCH_ON_ERROR = "Led {} could not be switched on";
//     static final String MESSAGE_SWITCH_OFF_ERROR = "Led {} could not be switched off";
//     static final String MESSAGE_NOT_ALL_BYTES_FROM_THE_WAS_WRITTEN_TO_USB = "Not all bytes from the was written to usb";
//     static final String MESSAGE_SWITCH_ON_LED = "Switch on '%s' Led";
//     static final String MESSAGE_SWITCH_OFF_LED = "Switch off '%s' Led";
//     static final String MESSAGE_USB_DEVICE_COULD_NOT_BE_CLOSED = "USB Device could not be closed";
// 
//     void switchOn(Color color);
// 
//     void switchOff(Color color);
// 
//     void switchOnAllLeds();
// 
//     void switchOffAllLeds();
// 
//     void close();
// }


import com.github.zutherb.buildlight.common.driver.core.Color;
import com.github.zutherb.buildlight.common.driver.core.TrafficLight;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
package com.github.zutherb.buildlight.common.driver.trafficlight;


/**
 * @author zutherb
 */
public class ConsoleTrafficLight implements TrafficLight {

    private static final Logger LOGGER = LoggerFactory.getLogger(ConsoleTrafficLight.class);
    private static TrafficLight instance;

    private ConsoleTrafficLight() {
        LOGGER.info("Traffic Light Mock was created");
    }

    @Override
    public void switchOn(Color color) {
        LOGGER.info("Switch on Led {}", color.name());
    }

    @Override
// Path: driver/common-driver/src/main/java/com/github/zutherb/buildlight/common/driver/core/Color.java
// public enum Color {
//     RED,
//     YELLOW,
//     GREEN;
// 
//     public static Color valueOfIgnoreCaseOrNull(String name) {
//         for (Color color : Color.values()) {
//             if (color.name().equalsIgnoreCase(name)) {
//                 return color;
//             }
//         }
//         return null;
//     }
// }
// 
// Path: driver/common-driver/src/main/java/com/github/zutherb/buildlight/common/driver/core/TrafficLight.java
// public interface TrafficLight {
//     static final String MESSAGE_SWITCH_ON_ERROR = "Led {} could not be switched on";
//     static final String MESSAGE_SWITCH_OFF_ERROR = "Led {} could not be switched off";
//     static final String MESSAGE_NOT_ALL_BYTES_FROM_THE_WAS_WRITTEN_TO_USB = "Not all bytes from the was written to usb";
//     static final String MESSAGE_SWITCH_ON_LED = "Switch on '%s' Led";
//     static final String MESSAGE_SWITCH_OFF_LED = "Switch off '%s' Led";
//     static final String MESSAGE_USB_DEVICE_COULD_NOT_BE_CLOSED = "USB Device could not be closed";
// 
//     void switchOn(Color color);
// 
//     void switchOff(Color color);
// 
//     void switchOnAllLeds();
// 
//     void switchOffAllLeds();
// 
//     void close();
// }


// Path: driver/common-driver/src/main/java/com/github/zutherb/buildlight/common/driver/trafficlight/ConsoleTrafficLight.java
import com.github.zutherb.buildlight.common.driver.core.Color;
import com.github.zutherb.buildlight.common.driver.core.TrafficLight;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

package com.github.zutherb.buildlight.common.driver.trafficlight;


/**
 * @author zutherb
 */
public class ConsoleTrafficLight implements TrafficLight {

    private static final Logger LOGGER = LoggerFactory.getLogger(ConsoleTrafficLight.class);
    private static TrafficLight instance;

    private ConsoleTrafficLight() {
        LOGGER.info("Traffic Light Mock was created");
    }

    @Override
    public void switchOn(Color color) {
        LOGGER.info("Switch on Led {}", color.name());
    }

    @Override
    public void switchOff(Color color) {