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



// line 5 "phpJavaRubyConstraint.ump"
public class Range
{

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

  //Range Attributes
  private int start;
  private int end;

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

  public Range(int aStart, int aEnd)
  {
    start = aStart;
    end = aEnd;
    if (aStart>=aEnd)
    {
      throw new RuntimeException("Please provide a valid end and start [start<end]");
    }
  }

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

  public boolean setStart(int aStart)
  {
    boolean wasSet = false;
    if (aStart<getEnd())
    {
    start = aStart;
    wasSet = true;
    }
    return wasSet;
  }

  public boolean setEnd(int aEnd)
  {
    boolean wasSet = false;
    if (getStart()<aEnd)
    {
    end = aEnd;
    wasSet = true;
    }
    return wasSet;
  }

  public int getStart()
  {
    return start;
  }

  public int getEnd()
  {
    return end;
  }

  public void delete()
  {}


  public String toString()
  {
    return super.toString() + "["+
            "start" + ":" + getStart()+ "," +
            "end" + ":" + getEnd()+ "]";
  }
}
