if (this.functionsNotYetFetched == true) {     Set unsavedFunctions = this.functions;  this.functions = this.getSignet().getFunctionsBySubsystem(this);  this.functions.addAll(unsavedFunctions);  this.functionsMap = buildMap(this.functions);  this.functionsNotYetFetched = false; }  Set resultSet = UnmodifiableSet.decorate(this.functions);  return resultSet;
return this.functions;
  public Set getFunctions()  {    // I really want to handle this purely through Hibernate mappings, but    // I haven't figured out how yet.    if (this.functionsNotYetFetched == true)    {      // We have not yet fetched the Functions associated with this      // Subsystem from the database. Let's make a copy of      // whatever in-memory Functions we DO have, because they represent      // defined-but-not-necessarily-yet-persisted Functions.      Set unsavedFunctions = this.functions;      this.functions = this.getSignet().getFunctionsBySubsystem(this);      this.functions.addAll(unsavedFunctions);      this.functionsMap = buildMap(this.functions);      this.functionsNotYetFetched = false;    }    Set resultSet = UnmodifiableSet.decorate(this.functions);    return resultSet;  }