Details
-
Improvement
-
Resolution: Fixed
-
Minor
-
2.1 Final
-
None
Description
Giancarlo :
just got a hint from boris about kyle's project setup and read it. not only do i agree completely to setting up two different instances for authoring and publish, but i strongly would recommend doing so.
but he does not talk about repositories! and since i am confused as well, why magnolia uses more than one repository, i drop a note to discuss on:
JSR 170 defines how to access a repository. it also defines, what a repository is. basically the idea is that a repository "manages" different data sources (e.g. ldap, fs, rdbms, etc.). so that's why i am confused about why having more than one repository.
i suppose, that magnolia wants to offer the liberty of e.g. managing users through an ldap server. this idea is a perfect scenario for a jsr 170 compliant repository! see, the developer writes "getProperty...", but does not care, where it comes from. the repository is responsable for reading/writing (like the sql syntax for a rdbms).
within a repository you configure workspaces, which all have at least one default "persistency manager". each persistency manager is responsible for reading/writing to a data source.
so if for example you want your users to be managed over ldap, you *configure* the ldap persistancy manager within a workspace (sets root node). all read/write events based on a child of that workspace root node will be managed by the ldap persistency manager.
the real, real brilliant idea is that the templater's jsp/java script does not care where the repository gets the information from. like in a rdbms, were you use "Select ...", in a jsr 170 compliant repository you use "getProperty...". so if one day you want to manage content in a rdbms (why would you do that anyway?) you simply (re-)configure a workspace with an according "persistency manager" and you do not touch your great and exciting web application at all!
IMHO, i would suggest that magnolia uses one repository, but offers 3 persistency managers (fs, rdbms and ldap). in april i think i could help on that.
----------------------------------------------------------------------------------------------------
1. with current magnolia implementation it allows you to use repository from any "vendor" not only jackrabbit.
2. you are talking about persistence managers, so you would write a persistence manager for jackrabbit to write on to LDAP, what if
I wanna use IBM jcr repository for that?
IMHO, i would suggest that magnolia uses one repository, but offers 3 persistency managers (fs, rdbms and ldap). in april i think i could help on that.
I am not opposing this but magnolia should not be dependent on repository and how it persist data.