Davy De Waele wrote:
Hi,
I have a couple of questions on how apacheds handles custom
objectclasses & attributes.
1) Am I correct in saying that the only way to include new custom
objectclasses & attributes (via LDIF), is to generate a set of Java
classes based on a given LDIF (through maven), wrap them in a JAR file,
and include them in the apacheds classpath?
No this is incorrect. The file that is parsed is an openldap schema
file not an LDIF. Otherwise you are correct.
2) Is there another more flexible way of introducing new
objectclasses/attributes to the directory?
Not yet but there may be soon. This is because the schema subsystem was
never completed. I wrote this rinky dink static schema setup as a means
to bootstrap partitions so they have correct information on how to
handle indices for various attributeTypes. I never intended it to be
used for solid state operation. It was just to keep things working
until I could write a more robust implementation.
3) What happens if I'm working with a binary release of apacheds
(downloaded from apache). Does this mean that I won't be able to
introduce new objectclasses & attributes ?
Not at all. You can still add your schema jar to the classpath.
The main drawback to this present mechanism is the fact that schema is
static. There are other more subtle drawbacks but other LDAP servers
have these as well so I won't bother mentioning them. However a static
schema is not always so bad since schema changes should rarely happen
once the system has gone to production. A restart of the server for the
time being is acceptable if you have to update schema.
Personally I think LDAP servers should not allow updates to schema
objects that are already in use in the server. This can lead to
inconsistencies. However all vendors allow you to shoot yourself in the
foot this way.
Alex