Function Name: Remove Component Relationship

Definition

Breaks the relationship between aggregate_object and component_object (and link_object, if given). Does notremove any of the objects involved from the transmittal (see SE_RemoveFromTransmittal()).

Note that the relationship being removed may be 1-way or 2-way. If it is 2-way, both connections are removed, unless the component is unresolved.

Returns

SE_SUCCESS - if valid parameters were passed in and all operations succeeded.

SE_INVALID_OR_NULL_OBJECT - and no changes are made, if

SE_UNRESOLVED_START_OBJECT - and no changes are made, if

SE_UNRESOLVED_OBJECT - and no changes are made, if the SDRM defines the relationship as bidirectional, but component_object is unresolved, so the relationship from component_object to aggregate_object cannot be removed.

SE_INVALID_ACCESS_MODE - and no changes are made, if

SE_FAILURE - and no changes are made, if

  1. aggregate_object and component_object are not related by a component relationship,
  2. link_object is provided but is not the link object for the relationship, or
  3. the API implementation specified does not provide this function in its shared library, and dynamic binding is specified at compile time.

Prototype


extern SE_STATUS_CODE_ENUM
SE_RemoveComponentRelationship
(
SE_OBJECT aggregate_object, (notes)
SE_OBJECT component_object, (notes)
SE_OBJECT link_object (notes)
);

Parameters Notes

aggregate_object

 object whose relationship to one of its components
    is being broken.

component_object

 object whose relationship to one of its aggregators
    (1-way or 2-way) is being broken

link_object

 if specified, link object for the component
    relationship being removed.

Prev: Remove Associate Relationship. Next: Remove From Transmittal. Up:Index.