Products :: ZenRelations :: ToManyContRelationship :: ToManyContRelationship :: Class ToManyContRelationship
[hide private]
[frames] | no frames]

Class ToManyContRelationship

source code

                    ExtensionClass.Base --+            
                                          |            
              OFS.CopySupport.CopyContainer --+        
                                              |        
                RelCopySupport.RelCopyContainer --+    
                                                  |    
                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.RelationshipBase --+    
                                                  |    
      ToManyRelationshipBase.ToManyRelationshipBase --+
                                                      |
                                                     ToManyContRelationship

ToManyContRelationship is the ToMany side of a realtionship that contains its related objects (like the normal Zope ObjectManager)

Instance Methods [hide private]
 
__init__(self, id)
set our instance values
source code
 
_safeOfObjects(self)
Try to safely return ZenPack objects rather than causing imports to fail.
source code
 
__call__(self)
when we are called return our related object in our aq context
source code
 
__getattr__(self, name)
look in the two object stores for related objects
source code
 
__hasattr__(self, name)
check to see if we have an object by an id this will fail if passed a short id and object is stored with fullid (ie: it is related not contained) use hasobject to get around this issue
source code
 
hasobject(self, obj)
check to see if we have this object
source code
 
addRelation(self, obj)
Override base to run manage_afterAdd like ObjectManager
source code
 
_setObject(self, id, object, roles=None, user=None, set_owner=1)
ObjectManager interface to add contained object.
source code
 
manage_afterAdd(self, item, container) source code
 
manage_afterClone(self, item) source code
 
manage_beforeDelete(self, item, container) source code
 
_add(self, obj)
add an object to one side of a ToManyContRelationship.
source code
 
_remove(self, obj=None, suppress_events=False)
remove object from our side of a relationship
source code
 
_remoteRemove(self, obj=None)
remove an object from the far side of this relationship if no object is passed in remove all objects
source code
 
_getOb(self, id, default=zenmarker)
look up in our local store and wrap in our aq_chain
source code
 
objectIds(self, spec=None)
only return contained objects
source code
 
objectIdsAll(self, spec=None)
only return contained objects
source code
 
objectValues(self, spec=None)
override to only return owned objects for many to many rel
source code
 
objectValuesAll(self, spec=None)
override to only return owned objects for many to many rel
source code
 
objectValuesGen(self)
Generator that returns all related objects.
source code
 
objectItems(self, spec=None)
over ride to only return owned objects for many to many rel
source code
 
objectItemsAll(self, spec=None)
over ride to only return owned objects for many to many rel
source code
 
_getCopy(self, container)
make new relation add copies of contained objs and refs if the relation is a many to many
source code
 
checkValidId(self, id)
Is this a valid id for this container?
source code
 
exportXml(self, ofile, ignorerels=[])
Return an xml representation of a ToManyContRelationship <tomanycont id='interfaces'> <object id='hme0' module='Products.Confmon.IpInterface' class='IpInterface'> <property></property> etc....
source code
 
checkRelation(self, repair=False)
Check to make sure that relationship bidirectionality is ok.
source code

Inherited from ToManyRelationshipBase.ToManyRelationshipBase: countObjects, findObjectsById, manage_workspace, setCount

Inherited from RelCopySupport.RelCopyContainer: manage_linkObjects, manage_unlinkObjects

Inherited from OFS.CopySupport.CopyContainer: cb_dataItems, cb_dataValid, manage_CopyContainerAllItems, manage_CopyContainerFirstItem, manage_clone, manage_copyObjects, manage_cutObjects, manage_pasteObjects, manage_renameObject, manage_renameObjects, validClipData

Inherited from OFS.CopySupport.CopyContainer (private): _get_id

Inherited from RelationshipBase.RelationshipBase: cb_isCopyable, cb_isMoveable, getId, getPrimaryParent, getRelationshipManagerClass, remoteClass, remoteName, remoteType, remoteTypeName, removeRelation

Inherited from PrimaryPathObjectManager.PrimaryPathManager: getPrimaryId, getPrimaryPath, getPrimaryUrlPath, primaryAq

Inherited from ZItem.ZItem: __len__, __repr__, manage, manage_FTPlist, manage_FTPstat, manage_editedDialog, this, titleOrId, title_and_id, title_or_id, tpURL, tpValues

Inherited from OFS.CopySupport.CopySource: cb_userHasCopyOrMovePermission

Inherited from OFS.CopySupport.CopySource (private): _canCopy, _notifyOfCopyTo, _postCopy, _setId

Inherited from App.Management.Tabs: filtered_manage_options, 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]
  meta_type = "ToManyContRelationship"
  security = ClassSecurityInfo()

Inherited from ToManyRelationshipBase.ToManyRelationshipBase: manage_main, manage_options

Inherited from OFS.CopySupport.CopyContainer: manage_renameForm

Inherited from ZItem.ZItem: REQUEST, __allow_access_to_unprotected_subobjects__, __name__, __propsets__, getId__roles__, icon, id, isPrincipiaFolderish, isTopLevelPrincipiaApplicationObject, title

Inherited from ZItem.ZItem (private): _manage_editedDialog

Inherited from App.Management.Tabs: manage_tabs, manage_workspace__roles__

Inherited from OFS.Traversable.Traversable: getPhysicalRoot

Method Details [hide private]

__call__(self)
(Call operator)

source code 

when we are called return our related object in our aq context

Overrides: RelationshipBase.RelationshipBase.__call__

hasobject(self, obj)

source code 

check to see if we have this object

Overrides: RelationshipBase.RelationshipBase.hasobject

addRelation(self, obj)

source code 

Override base to run manage_afterAdd like ObjectManager

Overrides: RelationshipBase.RelationshipBase.addRelation

_add(self, obj)

source code 

add an object to one side of a ToManyContRelationship.

Overrides: RelationshipBase.RelationshipBase._add

_remove(self, obj=None, suppress_events=False)

source code 

remove object from our side of a relationship

Overrides: RelationshipBase.RelationshipBase._remove

_remoteRemove(self, obj=None)

source code 

remove an object from the far side of this relationship if no object is passed in remove all objects

Overrides: RelationshipBase.RelationshipBase._remoteRemove

_getOb(self, id, default=zenmarker)

source code 

look up in our local store and wrap in our aq_chain

Overrides: OFS.CopySupport.CopyContainer._getOb

objectIds(self, spec=None)

source code 

only return contained objects

Overrides: ZItem.ZItem.objectValues

objectValues(self, spec=None)

source code 

override to only return owned objects for many to many rel

Overrides: ZItem.ZItem.objectValues

objectItems(self, spec=None)

source code 

over ride to only return owned objects for many to many rel

Overrides: ZItem.ZItem.objectValues

_getCopy(self, container)

source code 

make new relation add copies of contained objs and refs if the relation is a many to many

Overrides: OFS.CopySupport.CopySource._getCopy

exportXml(self, ofile, ignorerels=[])

source code 
Return an xml representation of a ToManyContRelationship
<tomanycont id='interfaces'>
    <object id='hme0'
        module='Products.Confmon.IpInterface' class='IpInterface'>
        <property></property> etc....
    </object>
</tomanycont>

checkRelation(self, repair=False)

source code 

Check to make sure that relationship bidirectionality is ok.

Overrides: RelationshipBase.RelationshipBase.checkRelation