Package Products :: Package ZenUtils :: Module PObjectCache :: Class PObjectCache |
[hide private]
[frames] | no frames]

# Class PObjectCache

source code

                                ExtensionClass.Base --+
                                                      |
                            ExtensionClass.Base --+   |
                                                  |   |
             webdav.EtagSupport.EtagSupport --+   |   |
                                              |   |   |
                   webdav.Lockable.LockableItem --+   |
                                                  |   |
                           webdav.Resource.Resource --+
                                                      |
                            ExtensionClass.Base --+   |
                                                  |   |
                         OFS.CopySupport.CopySource --+
                                                      |
                            ExtensionClass.Base --+   |
                                                  |   |
                                App.Management.Tabs --+
                                                      |
                        OFS.Traversable.Traversable --+
                                                      |
                                  OFS.ZDOM.Node --+   |
                                                  |   |
                                   OFS.ZDOM.Element --+
                                                      |
                        ExtensionClass.Base --+       |
                                              |       |
                      AccessControl.owner.Owned --+   |
                                                  |   |
                                    OFS.owner.Owned --+
                                                      |
                            ExtensionClass.Base --+   |
                                                  |   |
                               App.Undo.UndoSupport --+
                                                      |
                                    OFS.SimpleItem.Item --+
                                                          |
                                 Persistence.Persistent --+
                                                          |
                                   Acquisition.Implicit --+
                                                          |
                            ExtensionClass.Base --+       |
                                                  |       |
    AccessControl.PermissionMapping.RoleManager --+       |
                                                  |       |
              AccessControl.rolemanager.RoleManager --+   |
                                                      |   |
                                   OFS.role.RoleManager --+
                                                          |
                                  OFS.SimpleItem.SimpleItem --+
                                                              |
                                                             PObjectCache

Instance Methods | [hide private]
__init__(self, id, timeout=20, clearthresh=20) | source code
_p_resolveConflict(self, oldstate, savedstate, newstate) Any page that contains a lot of graphs is practically guaranteed to cause read conflict errors on PObjectCache. | source code
checkCache(self, key) check to see if key is in cache return None if not | source code
addToCache(self, key, obj) add an object to the cache | source code
manage_clearCache(self, REQUEST=None) | source code
cleanCache(self, force=0) clean the cache if nessesary | source code
getCache(self) | source code
getCacheTimeout(self) return cache timeout | source code
getCacheClearthresh(self) return cache clearthresh | source code
Inherited from `OFS.SimpleItem.Item`: `__len__`, `__repr__`, `getId`, `manage`, `manage_FTPlist`, `manage_FTPstat`, `manage_afterAdd`, `manage_afterClone`, `manage_beforeDelete`, `manage_editedDialog`, `objectIds`, `objectItems`, `objectValues`, `raise_standardErrorMessage`, `this`, `title_and_id`, `title_or_id`, `tpURL`, `tpValues` Inherited from `webdav.Resource.Resource`: `COPY`, `DELETE`, `HEAD`, `LOCK`, `MKCOL`, `MOVE`, `OPTIONS`, `PROPFIND`, `PROPPATCH`, `PUT`, `TRACE`, `UNLOCK`, `dav__init`, `dav__simpleifhandler`, `dav__validate`, `listDAVObjects`, `manage_DAVget` Inherited from `webdav.Lockable.LockableItem`: `wl_clearLocks`, `wl_delLock`, `wl_getLock`, `wl_hasLock`, `wl_isLocked`, `wl_lockItems`, `wl_lockTokens`, `wl_lockValues`, `wl_lockmapping`, `wl_setLock` Inherited from `webdav.EtagSupport.EtagSupport`: `http__etag`, `http__parseMatchList`, `http__processMatchHeaders`, `http__refreshEtag` Inherited from `OFS.CopySupport.CopySource`: `cb_isCopyable`, `cb_isMoveable`, `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` Inherited from `OFS.ZDOM.Element`: `getAttribute`, `getAttributeNode`, `getChildNodes`, `getElementsByTagName`, `getFirstChild`, `getLastChild`, `getNextSibling`, `getNodeName`, `getNodeType`, `getParentNode`, `getPreviousSibling`, `getTagName` Inherited from `OFS.ZDOM.Node`: `getAttributes`, `getNodeValue`, `getOwnerDocument`, `hasChildNodes` Inherited from `OFS.owner.Owned`: `manage_changeOwnershipType`, `manage_takeOwnership` Inherited from `AccessControl.owner.Owned`: `changeOwnership`, `getOwner`, `getOwnerTuple`, `getWrappedOwner`, `manage_fixupOwnershipAfterAdd`, `owner_info`, `userCanTakeOwnership` Inherited from `AccessControl.owner.Owned` (private): `_deleteOwnershipAfterAdd` Inherited from `App.Undo.UndoSupport`: `get_request_var_or_attr`, `manage_undo_transactions`, `undoable_transactions` Inherited from `OFS.role.RoleManager`: `manage_access`, `manage_acquiredPermissions`, `manage_addLocalRoles`, `manage_changePermissions`, `manage_defined_roles`, `manage_delLocalRoles`, `manage_editRoles`, `manage_permission`, `manage_role`, `manage_setLocalRoles` Inherited from `OFS.role.RoleManager` (private): `_addRole`, `_delRoles`, `_has_user_defined_role`, `_setRoles` Inherited from `AccessControl.rolemanager.RoleManager`: `ac_inherited_permissions`, `access_debug_info`, `acquiredRolesAreUsedBy`, `get_local_roles`, `get_local_roles_for_userid`, `get_valid_userids`, `has_local_roles`, `manage_getUserRolesAndPermissions`, `permission_settings`, `permissionsOfRole`, `possible_permissions`, `rolesOfPermission`, `userdefined_roles`, `users_with_local_role`, `valid_roles`, `validate_roles` Inherited from `AccessControl.PermissionMapping.RoleManager`: `manage_getPermissionMapping`, `manage_setPermissionMapping` Inherited from `AccessControl.PermissionMapping.RoleManager` (private): `_isBeingUsedAsAMethod`

Class Variables | [hide private]
| editCache = `DTMLFile('dtml/editCache', globals())`
| manage_options = `{'label': 'Cache', 'action': 'editCache'},`
| security = `ClassSecurityInfo()`
Inherited from `OFS.SimpleItem.Item`: `REQUEST`, `__allow_access_to_unprotected_subobjects__`, `__name__`, `__propsets__`, `icon`, `id`, `isPrincipiaFolderish`, `isTopLevelPrincipiaApplicationObject`, `meta_type`, `title` Inherited from `OFS.SimpleItem.Item` (private): `_manage_editedDialog` Inherited from `webdav.Resource.Resource`: `__dav_resource__`, `__http_methods__` Inherited from `App.Management.Tabs`: `manage_tabs`, `manage_workspace__roles__` Inherited from `OFS.Traversable.Traversable`: `getPhysicalRoot` Inherited from `OFS.owner.Owned`: `manage_owner` Inherited from `App.Undo.UndoSupport`: `manage_UndoForm` Inherited from `OFS.role.RoleManager`: `aclAChecked`, `aclEChecked`, `aclPChecked`, `manage_acquiredForm`, `manage_editLocalRoles`, `manage_listLocalRoles`, `manage_permissionForm`, `manage_reportUserPermissions`, `manage_roleForm`, `selectedRoles`, `smallRolesWidget`, `validRoles` Inherited from `OFS.role.RoleManager` (private): `_normal_manage_access` Inherited from `AccessControl.rolemanager.RoleManager`: `__ac_local_roles__`, `__ac_roles__`, `permissionMappingPossibleValues`

Method Details | [hide private]

### _p_resolveConflict(self, oldstate, savedstate, newstate) | source code
Any page that contains a lot of graphs is practically guaranteed to cause read conflict errors on PObjectCache. Fortunately it's really easy to do good conflict resolution on this simple object.