Package Products :: Package ZenRelations :: Module RelationshipBase :: Class RelationshipBase |
[hide private]
[frames] | no frames]

# Class RelationshipBase

source code

                    ExtensionClass.Base --+
                                          |
                ExtensionClass.Base --+   |
                                      |   |
             OFS.CopySupport.CopySource --+
                                          |
                ExtensionClass.Base --+   |
                                      |   |
                    App.Management.Tabs --+
                                          |
            OFS.Traversable.Traversable --+
                                          |
              AccessControl.Owned.Owned --+
                                          |
                                ZItem.ZItem --+
                                              |
                       Acquisition.Implicit --+
                                              |
             AccessControl.Role.RoleManager --+
                                              |
    PrimaryPathObjectManager.PrimaryPathManager --+
                                                  |
                                                 RelationshipBase

Known Subclasses:
  - ToManyRelationshipBase.ToManyRelationshipBase
  - , ToOneRelationship.ToOneRelationship

Abstract base class for all relationship classes.

Instance Methods | [hide private]
__call__(self) Return the contents of this relation. | source code
getId(self) Return the id of the object as a string. | source code
hasobject(self, obj) Does this relationship relate to obj. | source code
_add(self, obj) Add object to local side of relationship. | source code
_remove(self, obj=None, suppress_events=False) Remove object from local side of relationship. | source code
_remoteRemove(self, obj=None) Remove obj form the remote side of this relationship. | source code
addRelation(self, obj) Form a bi-directional relation between self and obj. | source code
removeRelation(self, obj=None, suppress_events=False) remove an object from a relationship | source code
remoteType(self) Return the type of the remote end of our relationship. | source code
remoteTypeName(self) Return the type of the remote end of our relationship. | source code
remoteClass(self) Return the class at the remote end of our relationship. | source code
remoteName(self) Return the name at the remote end of our relationship. | source code
getPrimaryParent(self) Return our parent object by our primary path | source code
getRelationshipManagerClass(self) Return the local class of this relationship. | source code
cb_isCopyable(self) Don't let relationships move off their managers | source code
cb_isMoveable(self) Don't let relationships move off their managers | source code
checkRelation(self, repair=False) Check to make sure that relationship bidirectionality is ok. | source code
Inherited from `PrimaryPathObjectManager.PrimaryPathManager`: `getPrimaryId`, `getPrimaryPath`, `getPrimaryUrlPath`, `primaryAq` Inherited from `ZItem.ZItem`: `__len__`, `__repr__`, `manage`, `manage_FTPlist`, `manage_FTPstat`, `manage_editedDialog`, `objectIds`, `objectItems`, `objectValues`, `this`, `titleOrId`, `title_and_id`, `title_or_id`, `tpURL`, `tpValues` Inherited from `OFS.CopySupport.CopySource`: `cb_userHasCopyOrMovePermission` Inherited from `OFS.CopySupport.CopySource` (private): `_canCopy`, `_getCopy`, `_notifyOfCopyTo`, `_postCopy`, `_setId` Inherited from `App.Management.Tabs`: `filtered_manage_options`, `manage_workspace`, `tabs_path_default`, `tabs_path_info` Inherited from `OFS.Traversable.Traversable`: `absolute_url`, `absolute_url_path`, `getPhysicalPath`, `restrictedTraverse`, `unrestrictedTraverse`, `virtual_url_path`

Class Variables | [hide private]
| _operation = `-1`
Inherited from `ZItem.ZItem`: `REQUEST`, `__allow_access_to_unprotected_subobjects__`, `__name__`, `__propsets__`, `getId__roles__`, `icon`, `id`, `isPrincipiaFolderish`, `isTopLevelPrincipiaApplicationObject`, `manage_options`, `meta_type`, `title` Inherited from `ZItem.ZItem` (private): `_manage_editedDialog` Inherited from `OFS.CopySupport.CopySource`: `security` Inherited from `App.Management.Tabs`: `manage_tabs`, `manage_workspace__roles__` Inherited from `OFS.Traversable.Traversable`: `getPhysicalRoot`

Method Details | [hide private]

### getId(self) | source code
Return the id of the object as a string. This method should be used in preference to accessing an id attribute of an object directly. The getId method is public. Overrides: ZItem.ZItem.getId (inherited documentation)

### _remove(self, obj=None, suppress_events=False) | source code
Remove object from local side of relationship. If obj=None remove all object in the relationship

### getPrimaryParent(self) | source code
Return our parent object by our primary path Overrides: PrimaryPathObjectManager.PrimaryPathManager.getPrimaryParent

### getRelationshipManagerClass(self) | source code
Return the local class of this relationship. For all relationshps this is the class of our __primary_parent___.

### cb_isCopyable(self) | source code
Don't let relationships move off their managers Overrides: OFS.CopySupport.CopySource.cb_isCopyable

### cb_isMoveable(self) | source code
Don't let relationships move off their managers Overrides: OFS.CopySupport.CopySource.cb_isMoveable