Пример #1
0
  /**
   * Clone everything except id that is set to -1.
   *
   * @return
   */
  public Object clone() {
    OperationData ret = new OperationData(this.getName(), getId());

    if (getCopy()) {
      ret.setId(Model.newId());
      ret.setName(ret.getName() + "_" + ret.getId());
    }

    Set<String> keys = preference.keySet();

    for (String key : keys) {
      ret.setValue(key, getValue(key));
    }

    // Copy preconditions
    //        sequenceCondition

    ret.setSequenceCondition(cloneSequenceConditions(sequenceCondition));
    ret.setPSequenceCondition(cloneSequenceConditions(pSequenceCondition));

    ret.setSeqInvariant(cloneSequenceConditions(seqInvariant));

    ret.setResourceBooking(cloneResources(resourceBooking));
    ret.setPResourceBooking(cloneResources(pResourceBooking));

    ret.setActions(cloneActions(actions));
    return ret;
  }