Første |
|
|
BeanInfo-klassen serie, Planche nr. 9 |
 |
Udskrift af : BeanInfo-klassen
|
Planche 1 : BeanInfo-klassen
Ved at tilknytte en BeanInfo-klasse til en klasse kan man
- Vælge hvilke egenskaber (properties) bønne-brugere kan se
- Tilknytte en ikon til klassen
- Angive rette-klasser (customizer-class)
- Lade egenskaber være reserveret eksperter
- Give mere sigende vejledning til bønne-bruger
Bønne-bruger er visuelle designer, der anvender javabeans.
Planche 2 : "Feature Descriptors"
Beskriver præcis klassens egenskaber
- BeanDescriptor
- klassens navn og type, samt evt. customzirs
- PropertyDescriptor
- IndexedPropeteriesDescriptor
- klassen properties, hvis det er arrays
- EventSetDesdriptor
- klassen hændelser (events)
- MethodDescriptor
- ParameterDescriptor
- parametrene til klassens metoder
Alle XXXDescriptor-klasser nedarver fra FeatureDiscriptor-klassen
BeanInfo-klasser implementerer metoder, der returnerer objekt af ovennævnte typer.
Planche 3 : Definer BeanInfo-klasse
- 1. Giv den navn XXXXBeanInfo
- hvis klassens navn er XXXX
- 2. Implementer BeanInfo interface
- Eller udvid f.eks. SimpleBeanInfo
- 3. Definer eller overskriv BeanInfo-metoderne
- Ikke implementerede metoder betyder ingen adgang
- 4. Tilknyt evt. en ikon-fil
- 5. Angiv klassen og evt. customizer
- metoder getBeanDescriptor()
BeanInfo-klassen søges i samme pakke, som klassen - eller i den særlig BeanInfo-søgesti.
Planche 4 : Customizer
Der er to måder at ændre en klasse på designtidspunktet
- Med property editorer
- Med customizers
Planche 5 : Property Editor
Hvert visuelt værktøj har et sæt editorer, som kan bruges:

Denne er fra Beans Developers Kit (BDK)
Planche 6 : Tilknytning
Hvilke editor man ønsker at bruges bestemmes af, hvilke metoder man implementerer fra PropertyEditor.
PropertyEditorer tilknyttes
- Direkte i BeanInfo-klassen
- Via en klassemetode
- java.Beans.PropertyEditorManager.registerEditor
- parametre typenavn og editorklasse
- Opslag med XXXXEditor navn
Planche 7 : Customizer
Beans-udvikleren kan få fuld kontrol ved at medsende en customizer-klasse
Den skal
- Udvides direkte eller indirekte fra Component-klassen
- Dvs. er et visuelt komponent
- Implementere java.beans.Customizer interface
- Definere en default konstruktør
- Tilknyttes via BeanInfo-klassens getBeanDescriptor metode
Planche 8 : Persistense
Beans-udvikleren kan også kontrolere omfanget af persistens (gemning)
- Angiv 'transient' for variable, der IKKE skal gemmes
- Implementer (overskriv) metoderne
- private void writeObject(java.io.ObjectOutputStream out)
- private void readObject(java.io.ObjectInputStream in)
Eller implementer Externalizable-interfacet
- Total kontrol af persistens
Planche 9 : Fremtiden?
- Java Activation Framework (JAF)
- Automatisk start, svarer til MIME
- beancontext
- Udvidede muligheder for at få oplysninger om JavaBeans-miljøet
- Drag and Drop
- Mulighed for at trække og slippe ind og ud af javamiljøet
© 1999 BLA*net - Leif E. Andersen,
leander@blanet.dk