Groovy: Как установить свойство в setProperty () и избежать бесконечной рекурсии?

Я пытаюсь реализовать доменный класс, который записывает, когда значение любого свойства было изменено, но мой setProperty() результаты вызова в бесконечной рекурсии при устанавливании фактического значения.

Это - то, как это смотрит прямо сейчас:

void setProperty(String name, value)
{
    if(name == "modified")
    {
        this.modified = value
        return
    }
    else
    {
        if(this[name]==value)
        {
            return
        }
        this.modified = true
        this[name]=value
    }
}

Таким образом, как я могу получить доступ к свойству, данному его имя, не инициировав рекурсивное setProperty() звонить? Или есть ли другой способ достигнуть моей цели?

5
задан Michael Borgwardt 15 January 2010 в 23:07
поделиться