Commit d7e9fc86 authored by Jean-Paul Smets's avatar Jean-Paul Smets

initial definition of interfaces for Base

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@27510 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 945c158f
# -*- coding: utf-8 -*-
############################################################################## ##############################################################################
# #
# Copyright (c) 2002-2003 Nexedi SARL and Contributors. All Rights Reserved. # Copyright (c) 2002-2003 Nexedi SARL and Contributors. All Rights Reserved.
...@@ -49,6 +50,7 @@ from Products.DCWorkflow.Transitions import TRIGGER_WORKFLOW_METHOD, TRIGGER_USE ...@@ -49,6 +50,7 @@ from Products.DCWorkflow.Transitions import TRIGGER_WORKFLOW_METHOD, TRIGGER_USE
from Products.ERP5Type import _dtmldir from Products.ERP5Type import _dtmldir
from Products.ERP5Type import PropertySheet from Products.ERP5Type import PropertySheet
from Products.ERP5Type import interfaces
from Products.ERP5Type import Permissions from Products.ERP5Type import Permissions
from Products.ERP5Type.Utils import UpperCase from Products.ERP5Type.Utils import UpperCase
from Products.ERP5Type.Utils import convertToUpperCase, convertToMixedCase from Products.ERP5Type.Utils import convertToUpperCase, convertToMixedCase
...@@ -84,6 +86,8 @@ import random ...@@ -84,6 +86,8 @@ import random
import inspect import inspect
from pprint import pformat from pprint import pformat
import zope.interface
from ZODB.POSException import ConflictError from ZODB.POSException import ConflictError
from zLOG import LOG, INFO, ERROR, WARNING from zLOG import LOG, INFO, ERROR, WARNING
...@@ -779,6 +783,11 @@ class Base( CopyContainer, ...@@ -779,6 +783,11 @@ class Base( CopyContainer,
# Declarative properties # Declarative properties
property_sheets = ( PropertySheet.Base, ) property_sheets = ( PropertySheet.Base, )
# Declarative interfaces
zope.interface.implements(interfaces.ICategoryAccessProvider,
interfaces.IValueAccessProvider,
)
# We want to use a default property view # We want to use a default property view
manage_propertiesForm = DTMLFile( 'dtml/properties', _dtmldir ) manage_propertiesForm = DTMLFile( 'dtml/properties', _dtmldir )
...@@ -2411,7 +2420,7 @@ class Base( CopyContainer, ...@@ -2411,7 +2420,7 @@ class Base( CopyContainer,
return self.getId() return self.getId()
security.declareProtected(Permissions.AccessContentsInformation, 'Title' ) security.declareProtected(Permissions.AccessContentsInformation, 'Title' )
Title = getTitleOrId Title = getTitleOrId # Why ???
# CMF Compatibility # CMF Compatibility
security.declareProtected(Permissions.AccessContentsInformation, 'title_or_id' ) security.declareProtected(Permissions.AccessContentsInformation, 'title_or_id' )
......
# -*- coding: utf-8 -*-
from cache_plugin import ICachePlugin from cache_plugin import ICachePlugin
from category_access_provider import ICategoryAccessProvider from category_access_provider import ICategoryAccessProvider
from value_access_provider import IValueAccessProvider
from constraint import IConstraint from constraint import IConstraint
##############################################################################
#
# Copyright (c) 2009 Nexedi SA and Contributors. All Rights Reserved.
# Jean-Paul Smets-Solanes <jp@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
from zope.interface import Interface
class IValueAccessProvider(Interface):
"""
This interface defines the methods which must be implemented
by a class in order to support Value accessors.
"""
def _getDefaultValue(id, spec=(), filter=None, portal_type=(), checked_permission=None, **kw):
"""
"""
def _getValueList(id, spec=(), filter=None, portal_type=(), checked_permission=None, **kw):
"""
"""
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment