Introduce OSAuthentication
[lgpl/argeo-commons.git] / server / runtime / org.argeo.server.jackrabbit / src / main / resources / org / argeo / jackrabbit / repository-inMemory.xml
index 289a408c52e6713caa465f6601763ecbc2738b83..348dc288b9703385e893cf0ae73f22cefb3d7215 100644 (file)
 <?xml version="1.0"?>
-<!--
-
-    Copyright (C) 2010 Mathieu Baudier <mbaudier@argeo.org>
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-            http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
--->
-
 <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD Jackrabbit 1.6//EN"
-                            "http://jackrabbit.apache.org/dtd/repository-1.6.dtd">
-       <!--
-               Example Repository Configuration File Used by -
-               org.apache.jackrabbit.core.config.RepositoryConfigTest.java -
-       -->
+                            "http://jackrabbit.apache.org/dtd/repository-2.0.dtd">
 <Repository>
-       <!--
-               virtual file system where the repository stores global state (e.g.
-               registered namespaces, custom node types, etc.)
-       -->
-       <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
-               <param name="path" value="${rep.home}/repository" />
-       </FileSystem>
-
-       <!--
-        security configuration
-    -->
-       <Security appName="Jackrabbit">
-               <!--
-                       security manager: class: FQN of class implementing the
-                       JackrabbitSecurityManager interface
-               -->
-               <SecurityManager
-                       class="org.apache.jackrabbit.core.security.simple.SimpleSecurityManager"
-                       workspaceName="security">
-                       <!--
-                               workspace access: class: FQN of class implementing the
-                               WorkspaceAccessManager interface
-                       -->
-                       <!-- <WorkspaceAccessManager class="..."/> -->
-                       <!-- <param name="config" value="${rep.home}/security.xml"/> -->
-               </SecurityManager>
-
-               <!--
-                       access manager: class: FQN of class implementing the AccessManager
-                       interface
-               -->
-               <AccessManager
-                       class="org.apache.jackrabbit.core.security.simple.SimpleAccessManager">
-                       <!-- <param name="config" value="${rep.home}/access.xml"/> -->
-               </AccessManager>
+       <!-- Shared datasource -->
+       <DataSources>
+               <DataSource name="dataSource">
+                       <param name="driver" value="org.h2.Driver" />
+                       <param name="url" value="jdbc:h2:mem:jackrabbit" />
+                       <param name="user" value="sa" />
+                       <param name="password" value="" />
+                       <param name="databaseType" value="h2" />
+                       <param name="maxPoolSize" value="10" />
+               </DataSource>
+       </DataSources>
 
-               <LoginModule
-                       class="org.apache.jackrabbit.core.security.simple.SimpleLoginModule">
-                       <!--
-                               anonymous user name ('anonymous' is the default value)
-                       -->
-                       <param name="anonymousId" value="anonymous" />
-                       <!--
-                               administrator user id (default value if param is missing is 'admin')
-                       -->
-                       <param name="adminId" value="admin" />
-               </LoginModule>
-       </Security>
+       <!-- File system and datastore -->
+       <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
+               <param name="dataSourceName" value="dataSource" />
+               <param name="schema" value="default" />
+               <param name="schemaObjectPrefix" value="fs_" />
+       </FileSystem>
+       <DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
+               <param name="dataSourceName" value="dataSource" />
+               <param name="schemaObjectPrefix" value="ds_" />
+       </DataStore>
 
-       <!--
-               location of workspaces root directory and name of default workspace
-       -->
+       <!-- Workspace templates -->
        <Workspaces rootPath="${rep.home}/workspaces"
-               defaultWorkspace="default" />
-       <!--
-               workspace configuration template: used to create the initial workspace
-               if there's no workspace yet
-       -->
+               defaultWorkspace="dev" />
        <Workspace name="${wsp.name}">
-               <!--
-                       virtual file system of the workspace: class: FQN of class
-                       implementing the FileSystem interface
-               -->
-               <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
-                       <param name="path" value="${wsp.home}" />
+               <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
+                       <param name="dataSourceName" value="dataSource" />
+                       <param name="schema" value="default" />
+                       <param name="schemaObjectPrefix" value="${wsp.name}_fs_" />
                </FileSystem>
-               <!--
-                       persistence manager of the workspace: class: FQN of class
-                       implementing the PersistenceManager interface
-               -->
                <PersistenceManager
-                       class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
-                       <!--
-                               <param name="url" value="jdbc:derby:memory:db;create=true" />
-                       -->
-                       <param name="url" value="jdbc:derby:${wsp.home}/db;create=true" />
-                       <param name="driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
-                       <param name="schemaObjectPrefix" value="${wsp.name}_" />
+                       class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager">
+                       <param name="dataSourceName" value="dataSource" />
+                       <param name="schemaObjectPrefix" value="${wsp.name}_pm_" />
                </PersistenceManager>
-               <!--
-                       Search index and the file system it uses. class: FQN of class
-                       implementing the QueryHandler interface
-               -->
                <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
                        <param name="path" value="${wsp.home}/index" />
-                       <param name="extractorPoolSize" value="2" />
-                       <param name="supportHighlighting" value="true" />
                </SearchIndex>
        </Workspace>
 
-       <!--
-        Configures the versioning
-    -->
+       <!-- Versioning -->
        <Versioning rootPath="${rep.home}/version">
-               <!--
-                       Configures the filesystem to use for versioning for the respective
-                       persistence manager
-               -->
-               <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
-                       <param name="path" value="${rep.home}/version" />
+               <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
+                       <param name="dataSourceName" value="dataSource" />
+                       <param name="schema" value="default" />
+                       <param name="schemaObjectPrefix" value="fs_ver_" />
                </FileSystem>
-
-               <!--
-                       Configures the persistence manager to be used for persisting version
-                       state. Please note that the current versioning implementation is
-                       based on a 'normal' persistence manager, but this could change in
-                       future implementations.
-               -->
                <PersistenceManager
-                       class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
-                       <!--
-                               <param name="url" value="jdbc:derby:memory:version;create=true" />
-                       -->
-                       <param name="url" value="jdbc:derby:${rep.home}/version/db;create=true" />
-                       <param name="driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
-                       <param name="schemaObjectPrefix" value="version_" />
+                       class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager">
+                       <param name="dataSourceName" value="dataSource" />
+                       <param name="schemaObjectPrefix" value="pm_ver_" />
                </PersistenceManager>
        </Versioning>
 
-       <!--
-               Search index for content that is shared repository wide (/jcr:system
-               tree, contains mainly versions)
-       -->
+       <!-- Indexing -->
        <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
                <param name="path" value="${rep.home}/repository/index" />
                <param name="extractorPoolSize" value="2" />
                <param name="supportHighlighting" value="true" />
        </SearchIndex>
-</Repository>
+
+       <!-- Security -->
+       <Security appName="Jackrabbit">
+               <SecurityManager
+                       class="org.apache.jackrabbit.core.security.simple.SimpleSecurityManager"
+                       workspaceName="security" />
+               <AccessManager
+                       class="org.apache.jackrabbit.core.security.simple.SimpleAccessManager" />
+               <LoginModule
+                       class="org.apache.jackrabbit.core.security.simple.SimpleLoginModule">
+                       <param name="anonymousId" value="anonymous" />
+                       <param name="adminId" value="admin" />
+               </LoginModule>
+       </Security>
+</Repository>
\ No newline at end of file