public void setContainer(NamedObj container)
Specify the container NamedObj, adding this attribute to the
list of attributes in the container. If the container already
contains an attribute with the same name, then throw an exception
and do not make any changes. Similarly, if the container is
not in the same workspace as this attribute, throw an exception.
If this attribute is already contained by the NamedObj, do nothing.
If the attribute already has a container, remove
this attribute from its attribute list first. Otherwise, remove
it from the directory of the workspace, if it is there.
If the argument is null, then remove it from its container.
It is not added to the workspace directory, so this could result in
this object being garbage collected.
Note that since an Attribute is a NamedObj, it can itself have
attributes. However, recursive containment is not allowed, where
an attribute is an attribute of itself, or indirectly of any attribute
it contains. This method is write-synchronized on the
workspace and increments its version number.
setContainer in class
container - The container to attach this attribute to..
IllegalActionException - If this attribute is not of the
expected class for the container, or it has no name,
or the attribute and container are not in the same workspace, or
the proposed container would result in recursive containment.
NameDuplicationException - If the container already has
an attribute with the name of this attribute.
- See Also: