Express (Distributed operating systems), v8.0 > Secure applications and their environment > Authenticate users > Select a registry or repository > Manage realms in a federated repository > Virtual member manager > Develop with virtual member manager
Extend virtual member manager functionality in the application
The virtual member manager model extension framework enables you to extend the virtual member manager model both at deployment time and at runtime.
Although virtual member manager comes with a built-in model, you might need to add new property definitions, new entity types and new control types to satisfy your specific needs.
The format (model) of the data graph can be expressed either as a dynamic model (XSD) or a static model (statically-generated code).
Properties and entities in the same name space must be either all in the static model or all in the dynamic model. The models cannot be mixed in the same name space.
The scope of extension includes adding at runtime and at deployment time. Virtual member manager is based on Service Data Object (SDO). The virtual member manager data graph model can be either static or dynamic. Static means code has been generated at deployment time to implement the model; dynamic means no code has been generated and the model is built in memory by loading from XSD files during each startup.
The performance of the static model is better but the dynamic model is more flexible.
The virtual member manager model extension framework supports the following scenarios where virtual member manager is configured to use:
- the dynamic model and create new property types for the virtual member manager built-in entity types at runtime through the virtual member manager API.
- the dynamic model and create new entity types and their associated new property types at runtime through the virtual member manager API.
- the dynamic model and create new property types for the virtual member manager built-in entity types at deployment time.
- the dynamic model and create new entity types and their associated new property types at deployment time.
- the dynamic model and create control types at deployment time.
- the static model and create new entity types and their associated new property types at runtime through the virtual member manager API.
- the static model and create new property types for the virtual member manager built-in entity types at deployment time.
- the static model and create new entity types and their associated new property types at deployment time.
- the static model and create control types at deployment time.
- Dynamic model schema loading process
If virtual member manager is configured to use the dynamic model, the dynamic process of loading schema occurs when virtual member manager starts up.- Schema loading process and schema extension in a multiple security domain environment
In a multiple security domain environment, each domain has its own copy of the virtual member manager schema.- Static model schema loading process
We can add new entity types, property types and control types into extension schema XSD files such as wimextension.xsd. These XSD files import the virtual member manager built-in schema XSD files. We can then generate the static model code from the extension schema XSD files through Eclipse or RAD development environment or similar tools. The generated mode code is compressed into jar files (for example, wimmodel.jar and wimmodelext.jar) and put under the class path.- Plug-in manager for virtual member manager
The plug-in manager provides a framework that enables you to write extensions to virtual member manager, to consume a variety of services that can be added in the future.
Parent topic: Develop with virtual member manager