Arquitectura de Componentes de Zope
2
Autor:
Version:
URL original:
Traductor:
URL en español:
Baiju M
0.4.2
http://www.muthukadan.net/docs/zca.pdf
Lorenzo Gil Sanchez <
[email protected]>
http://www.muthukadan.net/docs/zca-es.pdf
Copyright (C) 2007 Baiju M <baiju.m.mail AT gmail.com>.
Se permite la copia, distribución y/o modificación de este documento bajo los términos de la Licencia de Doc-
umentación Libre GNU, Versión 1.2 o (si lo prefiere) cualquier otra versión posterior publicada por la Free
Software Foundation.
El código fuente en este documento está sujeto a la Licencia Pública Zope, Versión 2.1 (ZPL).
EL PROGRAMA INCLUIDO EN ESTE DOCUMENTO SE OFRECE “TAL CUAL” SIN GARANTÍA DE
NINGÚN TIPO, YA SEA EXPLÍCITA O IMPLÍCITA, INCLUYENDO, PERO SIN LIMITARSE A, LAS
GARANTÍAS IMPLÍCITAS MERCANTILES Y DE APTITUD PARA UN PROPÓSITO DETERMINADO.
Note
Gracias a Kent Tenney (Wisconsin, USA) y Brad Allen (Dallas, USA) por sus sugerencias.
Contents
1 Primeros pasos
.
.
Introducción .
1.1
.
.
1.2 Una breve historia .
.
1.3
.
.
1.4 Experimentando con código .
Instalación .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 Un ejemplo
.
.
.
Introducción .
.
2.1
.
2.2 Enfoque procedural .
.
2.3 Enfoque orientado a objetos
.
2.4 El patrón adaptador .
.
.
.
.
.
.
3
.
.
.
.
.
.
Introducción .
Interfaces
3.1
.
3.2 Declarando interfaces .
3.3
3.4 Ejemplo revisado .
3.5
3.6
.
.
Implementando interfaces .
.
.
.
.
Interfaces de marcado .
Invariantes .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Adaptadores
.
.
.
Implementación .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
4.1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
4.2 Registro .
4.3 Patrón de consulta .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
4.4 Recuperar un adaptador usando una interfaz . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5 Patrón de Adaptador
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5 Utilidad
.
Introducción .
.
5.1
.
.
5.2 Utilidad simple .
5.3 Utilidad con nombre
5.4 Fábrica
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
7
7
7
8
9
11
11
11
12
13
15
15
16
17
17
18
18
21
21
22
23
24
25
27
27
27
28
29
4
CONTENTS
6 Adaptadores avanzados
6.1 Multi adaptador .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
6.2 Adaptador de subscripción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Manejador .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7 Uso de la ZCA en Zope
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
7.1 ZCML .
.
7.2 Redefiniciones .
.
7.3 NameChooser (Elejidor de nombres) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4 LocationPhysicallyLocatable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5 DefaultSized .
.
.
7.6 ZopeVersionUtility .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
8 Referencia
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8.1 Attribute .
.
.
.
.
8.2 Declaration .
.
.
.
.
8.3
Interface .
.
.
.
adapts .
8.4
.
.
.
.
.
8.5
alsoProvides .
.
classImplements .
8.6
.
.
classImplementsOnly .
8.7
.
8.8
classProvides .
.
.
8.9 ComponentLookupError
.
.
8.10 createObject .
.
.
8.11 directlyProvidedBy .
.
.
.
.
.
8.12 directlyProvides .
.
.
8.13 getAdapter .
.
.
.
.
8.14 getAdapterInContext
.
8.15 getAdapters .
.
.
.
8.16 getAllUtilitiesRegisteredFor
8.17 getFactoriesFor
.
.
.
8.18 getFactoryInterfaces .
.
8.19 getGlobalSiteManager
8.20 getMultiAdapter .
.
.
.
.
8.21 getSiteManager .
.
.
.
8.22 getUtilitiesFor .
8.23 getUtility .
.
.
.
.
.
.
.
.
.
8.24 handle .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
31
32
34
37
37
38
40
40
41
41
43
43
43
43
44
44
45
46
47
47
47
48
49
50
52
53
54
55
55
56
56
58
58
59
60
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
CONTENTS
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
61
62
62
63
64
64
65
65
65
65
65
67
68
69
70
71
72
74
75
76
76
77
78
79
81
82
83
85
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8.25 implementedBy .
.
.
.
.
8.26 implementer .
.
.
.
8.27 implements
.
.
.
.
.
8.28 implementsOnly .
.
.
8.29 moduleProvides .
.
.
.
8.30 noLongerProvides .
.
.
.
8.31 provideAdapter
.
8.32 provideHandler
.
.
.
8.33 provideSubscriptionAdapter
.
.
.
8.34 provideUtility .
.
.
.
.
8.35 providedBy .
.
.
8.36 queryAdapter
.
.
.
.
8.37 queryAdapterInContext .
.
.
.
8.38 queryMultiAdapter
.
.
8.39 queryUtility .
.
.
.
.
.
.
.
8.40 registerAdapter
.
.
.
Comentarios de: Arquitectura de Componentes de Zope (0)
No hay comentarios