Asignación simple de scala getter / setter

Digamos que tenemos una clase con una propiedad 'nombre':

class SuperFoo(var name: String) 

Si deseo anular esto, por ejemplo, para agregar algún bloqueo alrededor de las llamadas:

class SubFoo(n: String) extends SuperFoo(n) {
  val lock = new ReentrantLock
  override def name(): String =
    {
      lock.lock
      try {
        super.name
      } finally {
        lock.unlock
      }
    }
  override def name_=(arg: String): Unit = {
    lock.lock
    try {
      super.name = arg
    } finally {
      lock.unlock
    }
  }
}

Lo anterior produce un error de compilación:

super may be not be used on variable name 

¿Alguna idea de cómo implementar correctamente esto? (es decir, anular el getter y setter para agregar bloqueos alrededor de ellos). ¡Gracias!

Respuestas a la pregunta(1)

Su respuesta a la pregunta