/*PLEASE DO NOT EDIT THIS CODE*/
/*This code was generated using the UMPLE @UMPLE_VERSION@ modeling language!*/

package example;

public class LightFixture
{

  //------------------------
  // MEMBER VARIABLES
  //------------------------

  //LightFixture State Machines
  public enum Light { On, Off }
  private Light light;

  //------------------------
  // CONSTRUCTOR
  //------------------------

  public LightFixture()
  {
    setLight(Light.On);
  }

  //------------------------
  // INTERFACE
  //------------------------

  public String getLightFullName()
  {
    String answer = light.toString();
    return answer;
  }

  public Light getLight()
  {
    return light;
  }

  public boolean flip()
  {
    boolean wasEventProcessed = false;
    
    Light aLight = light;
    switch (aLight)
    {
      case On:
        setLight(Light.Off);
        wasEventProcessed = true;
        break;
      case Off:
        setLight(Light.On);
        wasEventProcessed = true;
        break;
      default:
        // Other states do respond to this event
    }

    return wasEventProcessed;
  }

  private void setLight(Light aLight)
  {
    System.out.println("About to flip");
    light = aLight;
    System.out.println("Just flipped");
  }

  public void delete()
  {}

}
