Out-of-the-box, virtual member manager provides a default
database profile repository (wimDB), that supports all common virtual
member manager supported profile repository features.
The database repository is designed using relational database.
The database adapter is a bridge between the virtual member manager
profile and schema managers and the underlying database. The adapter
looks up the data source and updates or queries the database using
SQL queries.
The database repository supports all entity types that are predefined
in the virtual member manager model schema definition, such as: Person,
Group, OrgContainer, and PersonAccount. The database adapter can also
support any user-defined entity types that extend from the virtual
member manager standard schema. It creates the user-defined entities
in the database during runtime.
The database repository supports predefined property definitions
that are consistent with the virtual member manager schema, as well
as dynamically defined new properties during runtime.
A database repository property definition extends the virtual member
manager schema property definition. It contains:
- name
- Specifies the name of the property. This is a required property.
- data type
- Specifies a data type. String, Integer, Long, Double, Timestamp,
Base64Binary, Identifier and Object are the default supported data
types. If a property has user-defined data type, set Objects as data
type and set the user-defined data type class name in the DBPROP table
“classname” column. For example, to support a Boolean data type, set
the “type_id” column OBJECT and set the “classname” column to java.lang.Boolean.
This is a required property.
Note: Supported data types are defined
in the SchemaConstant.java file.
- applicable for entity types
- Specifies a list of entity types for which this property is applicable,
for example, PersonAccount;Group. This is a required property.
- required for entity types
- Specifies a list of entity types that require this property value
to be set during the entity creation. This is an optional property.
- multiValued
- Specifies whether the database repository can store multiple values
for a property. By default, multiValued is true. This is an optional
parameter.
- metaName
- Specifies the name of metadata. By default, it is set to DEFAULT,
which means that there is no associated metadata. This is an optional
parameter.
- readOnly
- Specifies if a property is read only. By default, it is false.
This is an optional parameter.
- caseExactMatch
- Specifies if a property is case sensitive during the search. By
default, it is set to true. This is an optional parameter.
- valueLength
- Specifies he maximum length of a property if it is String type.
The default value is 1500. For other data types, this property is
ignored. This is an optional parameter.
- isComposite
- Specifies if a property is a composite property. By default, it
is false. This is an optional parameter.
- classname
- Specifies user-defined data type. If a user-defined data type
exists, the value of data type needs to be set to Object. This is
an optional parameter.
- description
- Specifies the description of the property. This is an optional
parameter.
- application ID
- Specifies the ID of the application that uses this property. By
default, the parameter is set to com.ibm.websphere.wim. This is an
optional parameter.
Note: To predefine a database repository
property before the virtual member manager is running, set the property
definitions in the wimdbpropreties.xml file. The wimdbproperty.xsd.
file is the schema file for the wimdbproperties.xml file.