/** * Add a relation to this container. This method should not be used directly. Call the * setContainer() method of the relation instead. This method does not set the container of the * relation to refer to this container. This method is <i>not</i> synchronized on the workspace, * so the caller should be. This overrides the base class to first populate the actor, if * necessary, by calling populate(). This ensures that the relation being added now appears in * order after the ones previously specified and lazily instantiated. * * @param relation Relation to contain. * @exception IllegalActionException If the relation has no name. * @exception NameDuplicationException If the name collides with a name already on the contained * relations list. */ protected void _addRelation(ComponentRelation relation) throws IllegalActionException, NameDuplicationException { populate(); super._addRelation(relation); }