exo-jcr SVN: r4880 - core/trunk/packaging/module/src/main/javascript.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-09-12 04:03:04 -0400 (Mon, 12 Sep 2011)
New Revision: 4880
Modified:
core/trunk/packaging/module/src/main/javascript/core.packaging.module.js
Log:
EXOJCR-1527: Correct the third party dependencies in packaging js
Modified: core/trunk/packaging/module/src/main/javascript/core.packaging.module.js
===================================================================
--- core/trunk/packaging/module/src/main/javascript/core.packaging.module.js 2011-09-09 10:02:01 UTC (rev 4879)
+++ core/trunk/packaging/module/src/main/javascript/core.packaging.module.js 2011-09-12 08:03:04 UTC (rev 4880)
@@ -32,8 +32,8 @@
addDependency(new Project("org.apache.pdfbox", "pdfbox", "jar", "1.4.0")).
addDependency(new Project("org.apache.pdfbox", "fontbox", "jar", "1.4.0")).
addDependency(new Project("org.apache.pdfbox", "jempbox", "jar", "1.4.0")).
- addDependency(new Project("bouncycastle", "bcmail-jdk15", "jar", "1.45")).
- addDependency(new Project("bouncycastle", "bcprov-jdk15", "jar", "1.45")).
+ addDependency(new Project("org.bouncycastle", "bcmail-jdk15", "jar", "1.45")).
+ addDependency(new Project("org.bouncycastle", "bcprov-jdk15", "jar", "1.45")).
addDependency(new Project("org.apache.commons", "commons-compress", "jar", "1.0")).
addDependency(new Project("org.apache.geronimo.specs", "geronimo-stax-api_1.0_spec", "jar", "1.0.1")).
addDependency(new Project("org.ccil.cowan.tagsoup", "tagsoup", "jar", "1.2")).
12 years, 9 months
exo-jcr SVN: r4879 - jcr/tags/1.14.0-GA.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-09 06:02:01 -0400 (Fri, 09 Sep 2011)
New Revision: 4879
Added:
jcr/tags/1.14.0-GA/readme.txt
Log:
EXOJCR-1489: added release notes
Added: jcr/tags/1.14.0-GA/readme.txt
===================================================================
--- jcr/tags/1.14.0-GA/readme.txt (rev 0)
+++ jcr/tags/1.14.0-GA/readme.txt 2011-09-09 10:02:01 UTC (rev 4879)
@@ -0,0 +1,818 @@
+JCR 1.14.0-GA release notes
+===========================
+
+eXoPlatform Java Content Repository (JSR-170) implementation and Extension services with clustering support.
+
+Features of 1.14.0-GA
+* Lazy Loading mechanism for the method Node.getNodes()
+* Allow end-products to choose between SLF4J 1.6.* or 1.5.* versions
+* Allow to choose a custom FSDirectory and FSDirectoryLockFactory
+* Concurrent repository creation
+
+Changes of 1.14.0-GA
+====================
+
+Bug
+ * [EXOJCR-1203] - TestDocumentViewCollision sometime failed
+ * [EXOJCR-1287] - RDBMS backup failed on Sybase because of constraint violation
+ * [EXOJCR-1370] - Same name siblings is not managed correctly
+ * [EXOJCR-1375] - TESTING: during load testing appear "Can not delete parent till childs exists" exception on RestoreOwnNodeTest
+ * [EXOJCR-1379] - Malformed GET response body for non-latin named collections
+ * [EXOJCR-1393] - Getting items by patterns doesn't work with MSSQL
+ * [EXOJCR-1395] - Some functional test on DB2 fails with asserts and errors
+ * [EXOJCR-1438] - Exception when edit the properties of a nt:resource node
+ * [EXOJCR-1440] - ItemExistsException is thrown after update to JCR 1.14.0-CR3
+ * [EXOJCR-1442] - Exo-jcr testsuite fully failing with MSSQL 2008
+ * [EXOJCR-1457] - Empty multi-values properties should processed properly
+ * [EXOJCR-1458] - getNodes doesn't return node ordered by order number in case of move
+ * [EXOJCR-1459] - Add java.lang.Class to set of 'known types' for java to JSON transformation
+ * [EXOJCR-1460] - RDBMS reindexing fails on database DB2 with multi-db.
+ * [EXOJCR-1462] - FUNCTIONAL TESTING: ORA-00933: SQL command not properly ended
+ * [EXOJCR-1463] - Undesirable mime-type resolver warning message while uploading files via ftp
+ * [EXOJCR-1464] - System Session Provider should always return System Session
+ * [EXOJCR-1465] - The namespace used in the configuration files is misspelled
+ * [EXOJCR-1468] - Throw proper exception in method org.exoplatform.services.jcr.impl.core.NodeImpl.addNode(String path) if node type can't be determined.
+ * [EXOJCR-1473] - WARNING: Could not unregister the MBean whenever server is shutdown
+ * [EXOJCR-1474] - Fuzzy Search fail with some search keys
+ * [EXOJCR-1485] - JCR backup should be portable
+ * [EXOJCR-1496] - Need add annotation @Provider to the org.exoplatform.services.rest.ext.provider.HierarchicalPropertyEntityProvider
+ * [EXOJCR-1499] - Collision between cache regions on a cluster using several portal containers
+ * [EXOJCR-1500] - Add Tika dependencies to Core packaging
+ * [EXOJCR-1501] - Set minConnection and maxConnection params from the ldap configuration via system properties
+
+Component Upgrade
+ * [EXOJCR-1475] - Upgrade ISPN to 5.0.0 FINAL
+
+Enhancement
+ * [EXOJCR-1236] - MembershipHandler.linkMembership() should not allow to add membership record which already exists
+ * [EXOJCR-1341] - Different behavior between Mysql and HSQL when creating contents with same name and different cases
+ * [EXOJCR-1394] - Updated versions of JDBC Drivers for MSSQL and DB2 are no accessible on maven repositories
+ * [EXOJCR-1411] - Make contact search in Organization Service non sensitive
+ * [EXOJCR-1447] - Copy only jar-files in tomcat lib directory
+ * [EXOJCR-1448] - Some code in jcr-ext require to be privileged
+ * [EXOJCR-1449] - Exclude dependencies of the eu.medsea.mimeutil artifact
+ * [EXOJCR-1466] - Make possible get byte, short, int and other primitive types from StringValue
+ * [EXOJCR-1472] - Performance issues met due to SecureRandom.nextBytes under heavy load
+ * [EXOJCR-1480] - Improve performance of ldap organization service
+ * [EXOJCR-1481] - Check index in READ_WRITE mode when setting it online
+ * [EXOJCR-1483] - Set autocommit to false only for write operations
+ * [EXOJCR-1491] - Add new method to MembershipHandler interface
+
+Feature Request
+ * [EXOJCR-267] - Implement Lazy Loading mechanism for the method Node.getNodes
+ * [EXOJCR-1239] - Improve query with path for cases when node has a lot of children nodes
+ * [EXOJCR-1389] - Improve Permission management in case of a JCR Query
+ * [EXOJCR-1437] - Allow to choose a custom FSDirectory and FSDirectoryLockFactory
+ * [EXOJCR-1467] - Concurrent repository creation
+ * [EXOJCR-1478] - Performance issue with Oracle DB 11.2.0.2
+ * [EXOJCR-1479] - Allow end-products to choose between SLF4J 1.6.* or 1.5.* versions
+ * [EXOJCR-1486] - Support to disable value-storage via system property
+
+Quality Risk
+ * [EXOJCR-1406] - Regression during weekly performance testing - RandomReadNtFileWithMetadataTest
+ * [EXOJCR-1446] - TESTING: Regression during load testing on LockUnlockOwnNodeTest
+
+Task
+ * [EXOJCR-923] - DefaultItemDataCopyVisitor refactoring
+ * [EXOJCR-1315] - Align commons-collection depenency version in JCR subprojects
+ * [EXOJCR-1390] - Message fix in NamespaceRegistry
+ * [EXOJCR-1461] - Add a dependency in kernel packaging js
+ * [EXOJCR-1470] - Allow top level applications to use any versions of commons-io
+ * [EXOJCR-1476] - Remove all the explicit GC calls
+ * [EXOJCR-1508] - Code Cleanup of JCR core
+
+Sub-task
+ * [EXOJCR-1361] - Profiling current patches to understand why we have some regression
+ * [EXOJCR-1428] - Review TCK knows issues
+ * [EXOJCR-1431] - Testing RDBMS features on MSSQL (2 DBs)
+ * [EXOJCR-1432] - Testing RDBMS features on Sybase
+ * [EXOJCR-1433] - Testing RDBMS features on DB2
+ * [EXOJCR-1450] - Investigate the performance of different patches with original use case
+ * [EXOJCR-1451] - Write tests
+ * [EXOJCR-1452] - Implementation
+ * [EXOJCR-1453] - Adoption and testing on all supported DB
+ * [EXOJCR-1455] - Avoid getting unnecessary data from database
+ * [EXOJCR-1488] - Use hints in query for reindixing for MySQL DB
+ * [EXOJCR-1502] - Improve RDBBS reindexing for Sybase
+
+Changes of 1.14.0-CR4
+====================
+
+Bug
+ * [EXOJCR-1057] - Problems during testing of Lock operations (EditLockedCommonNodeTest)
+ * [EXOJCR-1068] - Wrong unregister procedure for containers components
+ * [EXOJCR-1132] - Check problem with save configuration (RepositoryServiceConfigurationImpl.retain) to file system on OS Windows.
+ * [EXOJCR-1191] - Check problem with compatibility of incremental backup for JCR 1.12.x to JCR 1.14.x.
+ * [EXOJCR-1385] - PROBLEMS during functional testing: test TestISPNCacheWorkspaceStorageCacheInClusterMode
+ * [EXOJCR-1392] - Delay in replication of Nodes data in JBoss EPP Cluster
+ * [EXOJCR-1413] - [Perf] ItemDataTraversingVisitor#visit(NodeData node) continue to visit deeper althought onParentVersion=IGNORE
+ * [EXOJCR-1414] - Lists stored into the cache can be inconsistent in cluster environment
+ * [EXOJCR-1415] - FUNCTIONAL testing: failures on MySql
+ * [EXOJCR-1434] - FileCleaner in BackupManagerImpl should be used from proper RepositoryContainer
+ * [EXOJCR-1436] - Index reader handling improvements
+
+Enhancement
+ * [EXOJCR-1162] - Remove duplicated classes
+ * [EXOJCR-1303] - WARN No principal found when performing JBoss security manager cache eviction
+ * [EXOJCR-1378] - The "mimetype" of a file without extension is not retrieved in upload
+
+Feature Request
+ * [EXOJCR-1374] - Multi DB Schema Support
+ * [EXOJCR-1376] - Add UUID into the exception message content of ItemExistsException
+ * [EXOJCR-1396] - Add posibility to remove repositories created by RepositoryCreationService
+ * [EXOJCR-1397] - Create method which will return db configuration of repository
+ * [EXOJCR-1398] - Add posibility create repository in RepositoryCreationService with custom set of DB connection parameters
+ * [EXOJCR-1405] - Allow to set backup-dir in repository backup-log as related path or(and) can be set with help of system variables
+ * [EXOJCR-1417] - Make the code fully independent of DBCP
+ * [EXOJCR-1439] - Add getCurrentRepositoryName method to RepositoryServiceImpl
+
+Quality Risk
+ * [EXOJCR-1215] - Regression during daily tests on JCR-1.14.0
+
+Task
+ * [EXOJCR-1017] - Reduce amount of used threads as Search/Index engine
+ * [EXOJCR-1283] - Generate a source release zip
+ * [EXOJCR-1332] - SQL scripts for production
+ * [EXOJCR-1404] - Deprecate StorageUpdateManager feature
+ * [EXOJCR-1419] - Move FutureExoCache from GateIn commons to eXo kernel
+ * [EXOJCR-1426] - Cleanup the code to get rid of useless System.currentTimeMillis() calls
+
+Sub-task
+ * [EXOJCR-1362] - Put nodes in cache with ACL when they are asked by UUID
+ * [EXOJCR-1377] - Review tests in jcr-core projects [part 2]
+ * [EXOJCR-1382] - Investigate the reason of decreasing Property.setValue() performance
+ * [EXOJCR-1383] - Support paging for Sybase DB
+ * [EXOJCR-1384] - Prepare DB for testing RDBMS reindxing/backup/restore features
+ * [EXOJCR-1400] - Prepare Sybase DB for testing RDBMS features
+ * [EXOJCR-1401] - Prepare DB2 for testing RDBMS features
+ * [EXOJCR-1403] - Prepare Oracle 11 R1 and Oracle 11R2 for testing RDBMS features
+ * [EXOJCR-1408] - Improve the performance of the Property.setValue() methods
+ * [EXOJCR-1409] - Testing RDBMS features on PostgreSQL (2 DBs)
+ * [EXOJCR-1410] - Testing RDBMS features on MySQL (2 DBs)
+ * [EXOJCR-1420] - Remove repository in Standalone mode
+ * [EXOJCR-1422] - Remove repository in cluster mode
+ * [EXOJCR-1423] - Remove reference from InitialContextBinder
+ * [EXOJCR-1424] - Remove datasource from JNDI
+ * [EXOJCR-1425] - Close all database connections
+ * [EXOJCR-1429] - Improve the perfomance of NodeLockTest and NodeUnlockTest
+ * [EXOJCR-1443] - Review tests in jcr-ext project
+
+
+Changes of 1.14.0-CR3
+====================
+
+Bug
+ * [EXOJCR-1088] - Extra exception stack trace[EXOJCR-1088] - Extra exception stack trace[EXOJCR-958] - Problem with WebDav on Jboss-server
+ * [EXOJCR-1088] - Extra exception stack traces while browsing with Mac OS Finder through WebDAV
+ * [EXOJCR-1123] - TestRollbackBigFiles.java failed on MySQL
+ * [EXOJCR-1124] - Dolphin issues when moving resources/collections
+ * [EXOJCR-1163] - RPCService is held when try to execute remote command inside other
+ * [EXOJCR-1167] - Backup tests failed on Windows 7
+ * [EXOJCR-1168] - HTTPBackupAgentTest failed on Windows 7
+ * [EXOJCR-1178] - Incorrect MOVE method response when moving nodes between workspaces
+ * [EXOJCR-1187] - Increase memory consuming of JCR, OutOfMemoryError: PermGen space
+ * [EXOJCR-1200] - PROBLEMS during load testing *WARN * [Thread-72] LazyTextExtractorField: Exception reading value for field: Stream closed
+ * [EXOJCR-1249] - FUNCTIONAL testing: test TestLockPerstistentDataManager is in error
+ * [EXOJCR-1250] - FUNCTIONAL testing: on configuration multi, cache is turned off there're tests in error and in failure
+ * [EXOJCR-1255] - TESTING: during load testing appear "The Network Adapter could not establish the connection" exception
+ * [EXOJCR-1285] - Can't open versions of file with non-latin name
+ * [EXOJCR-1305] - Orderable child nodes not honouring the order before method after a move
+ * [EXOJCR-1319] - Still check lock on parent while isDeep = false
+ * [EXOJCR-1320] - Case sensitivityProblem with Oracle Virtual Directory and SQL Server
+ * [EXOJCR-1321] - TESTING: Can't open file with non-latin name via openoffice plugin. ErorCode: 404
+ * [EXOJCR-1322] - MANUAL TESTING: problems during move folder on "client-server"
+ * [EXOJCR-1327] - Need trigger events by default for Workspace.move()
+ * [EXOJCR-1331] - Cache can contain NullNodeData for root node after RDBMS restore
+ * [EXOJCR-1334] - Exception when edit the properties of a nt:resource node
+ * [EXOJCR-1342] - Thread not stopped when the application is stopped
+ * [EXOJCR-1344] - No eviction policy is allowed in case of the cache for indexing
+ * [EXOJCR-1345] - Cluster coordinator change throws Timed out waiting for flush to unblock
+ * [EXOJCR-1349] - Duplicate content of other workspaces in default workspace
+ * [EXOJCR-1350] - Impossible to move files in Webdav when the destination path contains space (Windows)
+ * [EXOJCR-1353] - NPE during incremental restore
+ * [EXOJCR-1354] - BackupManagerImpl and MultiIndex doesn't suspend theirs threads on stop methods
+ * [EXOJCR-1356] - Find a way to have a name for MBeans of JBossCaches used by the JCR
+ * [EXOJCR-1359] - PROBLEMS during functional testing: test TestUserTransaction is in failure
+ * [EXOJCR-1360] - PROBLEMS during functional testing: test TestQueryUsecases is in failure
+ * [EXOJCR-1367] - PROBLEMS during functional testing: test TestXATransaction is in error
+ * [EXOJCR-1369] - PROBLEMS during functional testing: test NodeReadMethodsTest is in error
+ * [EXOJCR-1371] - Properties can lose their "isMultivalued" flag after backup/restore operation.
+
+Enhancement
+ * [EXOJCR-1318] - Return only exptected attributes in SimpleLdapUserListAccess
+ * [EXOJCR-1323] - Make the StandaloneContainerInitializedListener work with a configured relative path
+ * [EXOJCR-1324] - Misspelling in some class names
+ * [EXOJCR-1326] - Do not create new instance of MimeTypeResolver for each PUT request.
+ * [EXOJCR-1337] - Do not check MultiIndex.checkIndexingQueue for finished documents
+ * [EXOJCR-1338] - Remove unnecessary component from configuration to avoid failed builds on Jenkins
+ * [EXOJCR-1343] - Avoid data accesses in case of new created nodes
+ * [EXOJCR-1347] - Clean the code of the IndexerChangesFilters
+ * [EXOJCR-1351] - Allow to manage the JCR Cache from JMX
+ * [EXOJCR-1352] - Set check-sns-new-connection into false by default
+ * [EXOJCR-1355] - Allow to suspend and resume the JobSchedulerService thanks to JMX and/or Rest
+ * [EXOJCR-1357] - Add to the documentation the name of the existing categories of statistics
+
+Feature Request
+ * [EXOJCR-480] - Managed transactions support
+ * [EXOJCR-1103] - Improve the methods Node.getProperties(String namePattern) and Node.getNodes(String namePattern)
+ * [EXOJCR-1111] - Reduce the total amount of queries needed to update a property
+ * [EXOJCR-1189] - Upgrade to use Tomcat AS v6.0.32
+ * [EXOJCR-1325] - Make possible to specify custom mimetypes.properties for MimeTypeResolver
+ * [EXOJCR-1328] - JCA support
+ * [EXOJCR-1329] - Allow to use TransactionsEssentials as Transaction Manager
+ * [EXOJCR-1333] - Provide a hasProfile method on ExoContainer
+
+Task
+ * [EXOJCR-769] - Port the RESTEndPoint annotation processor in WS sub-project
+ * [EXOJCR-944] - WS : Do not generate files in src directory of a project
+ * [EXOJCR-945] - JCR : Cleanup build
+ * [EXOJCR-1009] - Check if membership type is present before membership is created
+ * [EXOJCR-1221] - Resolve all the violations found by sonar when it is possible
+ * [EXOJCR-1297] - Apply the patch file to JCR doc of PLF trunk for codes to be highlighted
+ * [EXOJCR-1317] - Generate checksum for each artifact in project
+ * [EXOJCR-1340] - [DOC]Add isolation level notice to the documentation
+ * [EXOJCR-1348] - Use the DefaultChangesFilter in the configuration in case of a local mode
+ * [EXOJCR-1358] - In WebDAV Interpret NoSuchWorkspaceException as HTTP CONFLICT state
+ * [EXOJCR-1366] - minConnection and maxConnection params in the ldap configuration are not used
+ * [EXOJCR-1372] - Align dependencies with EAP 5.1
+ * [EXOJCR-1373] - Core.PDFDocumentReader support metadata UTF-16 encoding
+
+Sub-task
+ * [EXOJCR-1048] - TCK FrozenNodeTest has fails and exceptions - fix it
+ * [EXOJCR-1049] - Check MultiConfigServiceTest
+ * [EXOJCR-1050] - Check CommandServiceTest
+ * [EXOJCR-1335] - Prepare benchmark tests
+ * [EXOJCR-1363] - Investigate the reason of decreasing Session.getRootNode() performance
+ * [EXOJCR-1364] - Review tests in jcr-core projects [part 1]
+ * [EXOJCR-1365] - Appy patches and check the performance
+
+Changes of 1.14.0-CR2
+====================
+
+Bug
+ * [EXOJCR-1027] - TestPersistedValueData sometimes failed on hudson
+ * [EXOJCR-1081] - TestBackupManager sometimes failed on hudson
+ * [EXOJCR-1125] - FileCleaner is null in SysViewWorkspaceInitializer and BackupWorkapceInitializer.
+ * [EXOJCR-1192] - FUNCTIONAL testing: test TestQueryUsecases is in failure
+ * [EXOJCR-1234] - Orderable child node not honouring the add method
+ * [EXOJCR-1258] - Backup console doesn't work with Platform 3.5
+ * [EXOJCR-1263] - Problem of webdav on windows 7
+ * [EXOJCR-1267] - Dialog window "About" has incorrect version of jcr in webdav ms office plugin
+ * [EXOJCR-1270] - Workspace initializer is possible pushing an NullItemData into the cache when performing isWorkspaceInitialized() check
+ * [EXOJCR-1282] - File with non-latin name can't be open: Can't open remote file.ErrorCode:500
+ * [EXOJCR-1284] - Can't access file containing special characters in file name via Webdav
+ * [EXOJCR-1290] - Problems with dispalying non-latin names (ar,fr,ua,ru,vn) after restore in backup
+ * [EXOJCR-1291] - Component should be resumed in reverse order
+ * [EXOJCR-1296] - Problem when renaming a large folder containing multiple files in webdav (Windows)
+ * [EXOJCR-1300] - Use QueryParam to parameter "backup-set-path" in methods of HTTPBackupAgent
+ * [EXOJCR-1307] - Failing tests in the webdav project due to an encoding issue
+ * [EXOJCR-1308] - FUNCTIONAL testing: test TestJBossCacheWorkspaceStorageCacheInClusterMode is in failure
+ * [EXOJCR-1310] - Error when get node definition for node
+
+Component Upgrade
+ * [EXOJCR-1279] - Upgrade ISPN to 4.2.1 FINAL
+
+Enhancement
+ * [EXOJCR-1233] - JCR configuration update require dropping JCR_CONFIG table
+ * [EXOJCR-1241] - Give a more understandable name to all the existing Threads
+ * [EXOJCR-1268] - Allow to rely on the ConfigurationManager to get the JGroups configuration when we use ISPN as underlying cache
+ * [EXOJCR-1281] - Create database without datasource prefix in case of SingleDB
+ * [EXOJCR-1286] - Very high response time when loading a page in the "Community Management" portlet when using ldap
+ * [EXOJCR-1298] - Don't informative error at DefaultLoginModule.login() when the container is null.
+ * [EXOJCR-1311] - Ensure possibility to restore without dump of lock tables
+ * [EXOJCR-1314] - Improve QPath.isDescendantOf by using reverse order
+
+Feature Request
+ * [EXOJCR-577] - Allow to reindex a workspace asynchronously
+ * [EXOJCR-1204] - Indexing failed with "Can't acquire lock timeout" exception
+ * [EXOJCR-1206] - Create a data distribution service to help the applications to better distribute their child nodes
+ * [EXOJCR-1269] - Allow to set a default value when we use variables in configuration files
+ * [EXOJCR-1292] - Add possibility to know whether components are suspended or not
+ * [EXOJCR-1294] - Allow to create sessions from ACLs
+ * [EXOJCR-1301] - Allow to use external backup tools in a secure manner
+
+Task
+ * [EXOJCR-983] - Folders "logs" and "temp" are not on the same level as jetty
+ * [EXOJCR-1019] - Ensure that we can connect to WebDAV server using digest authentication
+ * [EXOJCR-1136] - Improve the NodeHierarchyCreator to better scale in term of users
+ * [EXOJCR-1170] - Comparing RDBMS backup/restore/reindexing features with old implementation
+ * [EXOJCR-1229] - Write an Upgrade guide from 1.14 beta3 to 1.14 CR1
+ * [EXOJCR-1257] - exobackup tool simplified command-line interface
+ * [EXOJCR-1260] - Improve the Tomcat bundle to test all the existing implementations
+ * [EXOJCR-1289] - Persisted data must be committed in cache without any transaction.
+ * [EXOJCR-1293] - Commons-lang dependency differs for JCR and Core
+ * [EXOJCR-1302] - Data consistency - avoid possible data overwrite
+
+Sub-task
+ * [EXOJCR-1265] - Restore on MSSQL 2005 failed because of Connection reset.
+ * [EXOJCR-1266] - RDBMS backup failed in cluster env with ISPN configuration
+ * [EXOJCR-1271] - Check the length of the name of the cache for lock
+ * [EXOJCR-1272] - The big batch commit in RDMBS restore on Oracle DB ws failed .
+ * [EXOJCR-1273] - RDBMS restore failes on DB2 because of DB2 SQL Error: SQLCODE=-964, SQLSTATE=57011,
+ * [EXOJCR-1274] - Check functional working RDBMS backup/restore feature with JBC
+ * [EXOJCR-1275] - Ensure working on Windows OS
+ * [EXOJCR-1276] - Determinate the way of comparing two configurations
+ * [EXOJCR-1280] - Allow to reindex a repository/workspace thanks to JMX
+
+Changes of 1.14.0-CR1
+====================
+
+Bug
+ * [EXOJCR-1116] - RepositoryCreatorService stucks at RepositoryCreationSynchronizer.waitForApproval()
+ * [EXOJCR-1122] - Location header missing in CREATED response for MOVE method
+ * [EXOJCR-1179] - Concurrent eXo cache creation doesn't prevent multiple cache creation
+ * [EXOJCR-1196] - ApplicationRegistry fails with NPE if any of javax.ws.rs.core.Application return null instead of empty collection of JAX-RS components
+ * [EXOJCR-1197] - OrganizationService is started before NodeHierarchyCreator is initialized
+ * [EXOJCR-1199] - Unprotected user code can stop container or org.picocontainer.Startable component
+ * [EXOJCR-1201] - Fix WS packaging JS file for REST dependency
+ * [EXOJCR-1210] - Restore from RDBMS backup fail on InnoDB(MySQL)
+ * [EXOJCR-1213] - Tomcat doesn't stop after gatein.sh stop
+ * [EXOJCR-1217] - Problem with the move function of webdav on https
+ * [EXOJCR-1218] - Problem of renaming folders in WebDav
+ * [EXOJCR-1232] - Unparseable variable in JCR XML configuration file
+ * [EXOJCR-1235] - NFS stale handle
+ * [EXOJCR-1238] - Not correct MBean components registration when PortalContainer contains more then one repository [Part2]
+ * [EXOJCR-1242] - UserImpl toString() wrong return value : only the @organizationId info.
+ * [EXOJCR-1253] - PDFBox dependencies not complete in Core packaging
+
+Enhancement
+ * [EXOJCR-1149] - Load scriptPath resource with help of org.exoplatform.container.configuration.ConfigurationManagerImpl in org.exoplatform.services.database.creator.DBCreator
+ * [EXOJCR-1182] - MimeTypeResolver does not work well with IE7
+ * [EXOJCR-1185] - Reduce the time spent in ParentNodeEvictionActionPolicy
+ * [EXOJCR-1188] - IndexInfos.write() should be called just after replaceIndexes operation done by IndexMerger
+ * [EXOJCR-1231] - Help applications to prevent memory leaks by enabling the SessionCleaner by default
+ * [EXOJCR-1240] - Give a more understandable name to all the existing Containers
+ * [EXOJCR-1243] - JobSchedulerService interface should include: addPeriodJob and addCronJob
+ * [EXOJCR-1254] - Add a mode that throws an Exception when we use a session that is not alive anymore
+
+Feature Request
+ * [EXOJCR-853] - Make it possible to create new repository in runtime from back-up in cluster environment
+ * [EXOJCR-1078] - Implement a Backup/Restore Feature for RDBMS
+ * [EXOJCR-1080] - Improve Lucene Indexing in a cluster environment
+ * [EXOJCR-1089] - RootContainer configuration fails in JBossAS 6
+ * [EXOJCR-1104] - Propose a re-indexing mechanism for RDBMS
+ * [EXOJCR-1142] - Add application/x-jaxrs+groovy mime type to mimetypes.properties for *.grs extension
+ * [EXOJCR-1160] - Glassfish Support
+ * [EXOJCR-1177] - Improve JCR Doc
+ * [EXOJCR-1180] - Allow to avoid using the cache factory under some specific conditions
+ * [EXOJCR-1183] - Implement RequestLifeCycle in ResourceLauncher
+ * [EXOJCR-1184] - Improve the re-indexing mechanism to take advantage of multi-cores
+ * [EXOJCR-1202] - Support disable feature for ISPN cache
+ * [EXOJCR-1207] - Export/Import child nodes version history in single xml with parent version history
+ * [EXOJCR-1220] - Allow to use variables to define any values in the configuration file
+ * [EXOJCR-1246] - StandaloneContainerInitializedListener should stop container on contextDestroyed method
+
+Task
+ * [EXOJCR-828] - JCR replication based on Infinispan
+ * [EXOJCR-1112] - DBCleanerService: Support clean data for single workspace in case of multi-db
+ * [EXOJCR-1157] - Upgrade to the latest maintenance version of Lucene 2.9
+ * [EXOJCR-1158] - Review all the third party libraries
+ * [EXOJCR-1159] - Upgrade all the choosen Third party libraries
+ * [EXOJCR-1175] - Implement PDFDocumentReader.getProperties using PDFBox
+ * [EXOJCR-1176] - Make text message of 405 (Method Not Allowed) status more meaningful
+ * [EXOJCR-1208] - ConstraintViolationException when Importing Version history of a nt:folder node having a nt:file child node. Apply patch.
+ * [EXOJCR-1230] - Update the js files in order to add the missing dependencies
+ * [EXOJCR-1252] - Remove asm dependency from Kernel packaging
+
+Sub-task
+ * [EXOJCR-832] - JCR Indexer based on Infinispan
+ * [EXOJCR-833] - Test the JCR Replication based on infinispan in non cluster mode
+ * [EXOJCR-834] - Test the JCR Replication based on infinispan in cluster mode
+ * [EXOJCR-930] - Testing in cluster environment
+ * [EXOJCR-970] - Ensure the collocation of the data related to the same node when it is possible
+ * [EXOJCR-1045] - Check the TestVersionRestore
+ * [EXOJCR-1046] - Few excluded tests fails because of SecurityManager
+ * [EXOJCR-1047] - Excluded TestSessionDataManager fails with NullPointerExceptions
+ * [EXOJCR-1100] - Documentation and prepare testcases for QA
+ * [EXOJCR-1153] - Support atomic restore
+ * [EXOJCR-1174] - Each cluster node must have it's own index
+ * [EXOJCR-1193] - Index retrieval from coordinator node
+ * [EXOJCR-1214] - Adopt benchmark for quick ISPN <--> JBC switching. Set ISPN as default for benchmark and functional tests
+
+
+Changes of 1.14.0-Beta03
+====================
+
+Bug
+ * [EXOJCR-956] - Cannot use webdav service with a version of jcr:content
+ * [EXOJCR-961] - On restore node the versioning child was removed, but versioning child should be remain unchanged.
+ * [EXOJCR-974] - Simple skin from examples folder doesn't appear at list
+ * [EXOJCR-977] - InitialContextBinder.java doesn't support // instances
+ * [EXOJCR-979] - Lock operations does not checks any permission
+ * [EXOJCR-982] - Problems during testing of jetty: *ERROR* [qtp31131058-61] PropFindResponseEntity:
+ * [EXOJCR-984] - CachingContainer returns unregistered components
+ * [EXOJCR-993] - Daily testing problem: NPE during testing
+ * [EXOJCR-994] - WEBDav view in a webbrowser has hardcoded image links
+ * [EXOJCR-995] - NPE when try to import data via WorkspaceContentImporter
+ * [EXOJCR-1000] - Not correct MBean components registration when PortalContainer contains more then one repository
+ * [EXOJCR-1001] - refresh breaks webdav published files
+ * [EXOJCR-1002] - MethodAccessFilter return not human readable error message and don't set "JAXRS-Body-Provided" header in case rolles not allowed
+ * [EXOJCR-1003] - DeleteCommand in case try remove locked file return don't human readable message
+ * [EXOJCR-1012] - Response on PROPFIND method with 'allprop' element contains wrong formatted and extra data
+ * [EXOJCR-1013] - Response on PROPFIND method with 'allprop' element doesn't contain properties inside <D:include> element
+ * [EXOJCR-1014] - FTP server doesn't show list of workspaces after repository restoring
+ * [EXOJCR-1015] - PROBLEM with Testing Backup Console: restore workspace/backup
+ * [EXOJCR-1030] - Impossible to retrieve the lock on a node even by the root
+ * [EXOJCR-1036] - Empty metadata field not updated when re-uploading documents
+ * [EXOJCR-1037] - If a header delegate is not available then toString method of Object should be used
+ * [EXOJCR-1038] - Some Unit Tests on DB2 related to the CAS plugin fail
+ * [EXOJCR-1040] - eXo JCR doesn't work with Oracle 11g R2 RAC
+ * [EXOJCR-1043] - Index already present error during cluster start
+ * [EXOJCR-1051] - Problems when start backup-console
+ * [EXOJCR-1058] - Problem with uploading files via MacOS client
+ * [EXOJCR-1060] - Indexer doesn't fully release resources on stop
+ * [EXOJCR-1061] - Access Denied in jcr:content with anonim__ permission
+ * [EXOJCR-1062] - WebDAV response is LOCKED after LOCK -> PUT request from the client (but PUT sends locktoken given after LOCK)
+ * [EXOJCR-1065] - Functional testing jcr.core: API Tests failures on Mysql DB
+ * [EXOJCR-1069] - Backup console throws NPE if backup agent isn't deployed on server
+ * [EXOJCR-1073] - TestRPCServiceImpl fails with JGroups 2.10.0.GA
+ * [EXOJCR-1085] - Wrong Content-Type header for files over a certain size
+ * [EXOJCR-1087] - MySQL-UTF8 dialect default collation can be case-insensitive - need case-sensitive set explicitly
+ * [EXOJCR-1092] - Unexpected behaviour of Nautilus while creating/renaming a folder/file via WebDAV
+ * [EXOJCR-1093] - Wrong pasting of a copied folder using Nautilus via WebDAV
+ * [EXOJCR-1095] - Webdav doesn't work on JBoss
+ * [EXOJCR-1098] - The If-Modified-Since property in the HTTP header doesn't exist
+ * [EXOJCR-1107] - RPCService.executeCommandOnCoordinator() doesn't work properly when few instances are on the same workstation
+ * [EXOJCR-1109] - Object BooleanValue must return string representation of boolean value by method getStringValue().
+ * [EXOJCR-1113] - SessionDataManager.listChildPropertiesData(NodeData parent) must not return ValueDatas
+ * [EXOJCR-1115] - Exception error during edit content
+ * [EXOJCR-1117] - Correct misspelling in some methods names: doPriviledged to doPrivileged
+ * [EXOJCR-1118] - IncrementalBackupJob should be thread safe
+ * [EXOJCR-1131] - Node restore result depends on cache eviction
+ * [EXOJCR-1133] - Unit tests fail due to a AccessControlException in cluster mode
+ * [EXOJCR-1139] - Restored version nodes get id from jcr:uuid property instead fetch generated id
+ * [EXOJCR-1140] - Corrupted data if the server is stopped while document is locked
+ * [EXOJCR-1145] - IndexMerger in RO mode is not aware of new indexes
+ * [EXOJCR-1151] - FORM authentication doesn't work with jcrbackup tool and Platform
+ * [EXOJCR-1152] - WADL generation fails if resource class contains some type of sub-resource locators
+ * [EXOJCR-1154] - Repository restore fails using exobackup tool with Component unregister error
+ * [EXOJCR-1155] - Set scope test for junit dependency in exo.ws.rest.ext project
+ * [EXOJCR-1165] - BackupManager restore : Temporary files not deleted
+ * [EXOJCR-1169] - Remove some unnecessary jars
+ * [JCR-1462] - Problems during testing of backup on jcr 1.12.5-GA-SNAPSHOT
+ * [JCR-1483] - When a folder is cut server->client, folder on server doesn't remove.
+ * [JCR-1485] - Unknown error and strange behavior when mary edits a webcontent
+ * [JCR-1508] - Property not found dc:title during testing RandomReadNtFileWithMetadataTest
+
+Documentation
+ * [JCR-1433] - jcr backup/restore
+
+Feature Request
+ * [EXOJCR-747] - Make Backup restore easier
+ * [EXOJCR-887] - Allow to start all the cluster nodes in parallel even during for the first initialization of the JCR
+ * [EXOJCR-971] - Prevent unauthorized access to the methods of RepositoryServiceImpl
+ * [EXOJCR-973] - Add possibility set user role in org.exoplatform.services.rest.tools.ResourceLauncher
+ * [EXOJCR-992] - Allow to use a String as entity for a JSON response
+ * [EXOJCR-997] - Whole Repository backup support in Backup Console tool
+ * [EXOJCR-999] - Limit the total amount of WorkerThreads
+ * [EXOJCR-1011] - Allow to use variables to define the realm, the rest context and the portal container name of a PortalContainerDefinition
+ * [EXOJCR-1020] - Create groovy compiler which able consume JCR node references and produce set of classes as result.
+ * [EXOJCR-1024] - Make possible to overwrite default providers (readers and writers)
+ * [EXOJCR-1029] - The result of the method getReferencesData is never stored into the cache
+ * [EXOJCR-1032] - Limited support WedDav ACL specification
+ * [EXOJCR-1064] - Code review of ACL managment in case of copy/moving nodes
+ * [EXOJCR-1066] - Avoid iterating over a List thanks to its iterator when it is possible
+ * [EXOJCR-1079] - Create plugin for adding exception mapping providers in REST environment
+ * [EXOJCR-1099] - Add support restore existed repository/workspace in backup console
+ * [EXOJCR-1105] - Make it possible to configure dependencies path for Groovy scripts in runtime
+ * [EXOJCR-1143] - Add possibility to get raw JSON data in methods of RESTful services.
+ * [EXOJCR-1150] - DB clean on MySQL should not use iterating over all db
+ * [EXOJCR-1164] - Make possible in JrGroovyCompiler get list of URL on dependency classes
+ * [EXOJCR-1172] - Rest framework must understand http header "x-forwarded-host"
+
+Task
+ * [EXOJCR-946] - Adopt Backup client article
+ * [EXOJCR-949] - Updating eXo JCR version in ra.xml automatically
+ * [EXOJCR-952] - Backport 1.14.x branch commits to trunk
+ * [EXOJCR-955] - BufferedJBossCache performance improving
+ * [EXOJCR-963] - [DOC]Reply on JBC regions to avoid having too many JBC instances
+ * [EXOJCR-965] - Cache doesn't support disable feature
+ * [EXOJCR-972] - Add org.exoplatform.services.rest.ext.method.filter.MethodAccessFilter in container configuration by default
+ * [EXOJCR-981] - Remove timestamp from names of jar-files in application bundles
+ * [EXOJCR-986] - Enable the security manager by default in all the projects
+ * [EXOJCR-988] - RepositoryException: URI is not hierarchical on remove workspace via backup console
+ * [EXOJCR-989] - Refactor JSON framework
+ * [EXOJCR-996] - Merge performance improvements
+ * [EXOJCR-998] - Null values management must be reviewed to be up to date
+ * [EXOJCR-1010] - Create two more constructors for WebDavServiceImpl
+ * [EXOJCR-1018] - Bind slf4j-log4j and log4j dependencies onto the test phase of the various modules of JCR [part #2]
+ * [EXOJCR-1028] - Update the example of configuration for a cluster environment
+ * [EXOJCR-1044] - Check TestQueryUsecases
+ * [EXOJCR-1054] - Apply all the changes made in the ISPN branch to the trunk
+ * [EXOJCR-1055] - Update XPath query ordering chapter in jcr documents
+ * [EXOJCR-1067] - Reduce contention on read in NodeTypeDataHierarchyHolder if possible
+ * [EXOJCR-1070] - Remove dependency on pull-parser artifact as redundant
+ * [EXOJCR-1071] - Move JCR framework commands list configuration to it right place
+ * [EXOJCR-1072] - Publish the reference guide in docbook format
+ * [EXOJCR-1074] - Avoid iterating over a List thanks to its iterator when it is possible [Part #2]
+ * [EXOJCR-1075] - JCR backupset should be fully independent
+ * [EXOJCR-1076] - Backup console binary distribution
+ * [EXOJCR-1083] - Create Group personnal folder should be after Group creation: aplly patch
+ * [EXOJCR-1084] - Exclude jgroups:jgroups:jar:2.6.13.GA:compile dependency from org.jboss.cache:jbosscache-core:jar:3.2.6.GA:compile in JCR parent pom.xml
+ * [EXOJCR-1086] - Remove permission on child isn't used: apply patch
+ * [EXOJCR-1114] - Support more MIME types
+ * [EXOJCR-1119] - Avoid to get an item from the DB if the parent node is new
+ * [EXOJCR-1120] - Changes log traversing is under optimized
+ * [EXOJCR-1129] - Port the documentation about the ISPN implementation of eXo Cache
+ * [EXOJCR-1134] - Check in IndexerSingletonStoreCacheLoader if the children should not be removed
+ * [EXOJCR-1135] - Check in DefaultChangesFilter if we use the right ids in case of a IOException while updating the index of the parentSearchManager
+ * [EXOJCR-1137] - Remove some unnecessary jars
+ * [EXOJCR-1138] - Document databases supported by eXo JCR
+ * [EXOJCR-1148] - Add posibility to configure additional DBCP DataSources parameters in RepositoryCreationService
+ * [EXOJCR-1166] - Document Repository or Workspace initialization from backup
+ * [EXOJCR-1171] - Make possible to use the same GroovyClassLoader in JcrGroovyCompiler and GroovyJaxrsPublisher
+ * [JCR-1515] - Remove jgroup dependency from jcr-services as redundant
+
+Sub-task
+ * [EXOJCR-928] - Study the way how repository configuration can be replicable
+ * [EXOJCR-929] - Implementation
+ * [EXOJCR-939] - Create service to clean DB
+ * [EXOJCR-966] - Write the specification of the RPCService
+ * [EXOJCR-967] - Implement the RPCService
+ * [EXOJCR-1091] - Try to find way to restore value more than 2G
+ * [EXOJCR-1096] - Test on all supported database
+ * [EXOJCR-1097] - Support of restore independent of mulit-db type
+ * [EXOJCR-1101] - Check TestRDBMSBAckupManager
+ * [EXOJCR-1102] - RDBMS backup stress testing
+ * [EXOJCR-1106] - Profiling backup/restore method
+ * [EXOJCR-1110] - Dump data from system table in case of multi-db for non system table
+ * [EXOJCR-1121] - HSQLDB performs commit after tables are locked
+ * [EXOJCR-1127] - Make workspace waiting before starting full backup job
+ * [EXOJCR-1130] - Implement approach using the marker Backupable
+ * [EXOJCR-1146] - DBCleanerService should not relate on AbstractCacheableLockManager
+ * [EXOJCR-1147] - Make backup/restore to be cluster aware
+ * [JCR-1481] - Adding support form authentication in backup console
+
+Changes of 1.14.0-Beta02
+====================
+
+Bug
+ * [EXOJCR-688] - Some entries in the eXo JCR cache are not evicted properly
+ * [EXOJCR-843] - Exceptions after importing file with version history
+ * [EXOJCR-849] - "Permission denied" on client side, when trying to move file(s) to another workspace through FTP
+ * [EXOJCR-856] - Problems while recopying same files via webdav
+ * [EXOJCR-865] - Data corrupt after restore a node which has been imported with version history
+ * [EXOJCR-878] - WebDAV doesn't work with nt:file
+ * [EXOJCR-879] - TestCaching.testNotModifiedSince failed in same cases
+ * [EXOJCR-882] - TestCaching fails on Windows XP SP 2 with Russian locale
+ * [EXOJCR-888] - The problems with restore version node
+ * [EXOJCR-890] - JSON framework don't work with beans created in groovy
+ * [EXOJCR-891] - Snaphosts IDs make the applications build improperly
+ * [EXOJCR-897] - Add registration required node types in single DB confg for test TestImport.
+ * [EXOJCR-908] - Used wrong delimiter during parsing permission value
+ * [EXOJCR-909] - In LDAPService, InitialContext is not safely closed in authenticate method
+ * [EXOJCR-912] - Unable to convert the JCR documentation to pdf
+ * [EXOJCR-916] - Duplicate instantiation of some services
+ * [EXOJCR-921] - Workspace.copy(srcWS, srcAbsPath, destAbsPath) can not copy root child to another workspace root child
+ * [EXOJCR-922] - MapResourceBundle.resolveDependencies() throw java.lang.StackOverflowError
+ * [EXOJCR-924] - Unable to coerce 'Event' into a LONG: java.lang.NumberFormatException: For input string: "Event"
+ * [EXOJCR-933] - Determine property type from nodetype definition in DocumentViewImport for version history.
+ * [EXOJCR-936] - Avoid converting binary value to String in tests
+ * [EXOJCR-954] - Can't get property of a node if it has a child node with the same name with the property
+ * [EXOJCR-964] - User logged-out and cannot login after some inactivity
+
+Feature Request
+ * [EXOJCR-749] - Make eXo JCR rely on Apache Tika
+ * [EXOJCR-771] - Jetty Support
+ * [EXOJCR-776] - Implement the method toString for the main classes of JCR for debugging purpose
+ * [EXOJCR-842] - Allow to disable a given PortalContainer
+ * [EXOJCR-880] - Determine property is multi or single value from nodetype definition in import.
+ * [EXOJCR-886] - Update the document handler to manage MS Office 2007 meta data extraction (docx, ...)
+ * [EXOJCR-934] - Decouple event name from listener name in ListenerService.
+ * [EXOJCR-935] - Add "dav:isreadonly" property management
+ * [EXOJCR-942] - Reply on JBC regions to avoid having too many JBC instances
+ * [EXOJCR-943] - Make JBC implementation of eXo Cache replies on JBC regions to avoid having too many JBC instances
+ * [EXOJCR-950] - Prevent the JobSchedulerServiceImpl to launch jobs that rely on non started services in JBoss AS
+ * [EXOJCR-951] - Make the JobSchedulerServiceImpl support multi portal containers
+
+Task
+ * [EXOJCR-752] - Avoid to load into the memory the full content of a document while extracting the metadata and the text content
+ * [EXOJCR-755] - Study the extensibility of Apache Tika
+ * [EXOJCR-910] - Resynchronize the doc of JCR 1.12 with the trunk
+ * [EXOJCR-917] - core.packaging.module.js error when in deploy phase
+ * [EXOJCR-919] - maxVolatileTime should be checked on checkFlush()
+ * [EXOJCR-927] - Add "application/x-groovy+html" to HTMLDocumentReader and "application/x-jaxrs+groovy" to TextPlainDocumentReader
+ * [EXOJCR-957] - Remove organization nodetypes from projects where it not used
+ * [EXOJCR-962] - [DOC]Make JBC implementation of eXo Cache replies on JBC regions to avoid having too many JBC instances
+
+Sub-task
+ * [EXOJCR-892] - Remove Fake Chapters
+ * [EXOJCR-893] - Apply the structure of PLF
+ * [EXOJCR-940] - Created special method for remove workspace without checking of system workspace
+ * [EXOJCR-941] - Create special method for remove repository without checking of default-repository
+
+
+Changes of 1.14.0-Beta01
+====================
+
+Bug
+ * [EXOJCR-564] - Cannot use the old Hibernate org service in Gate In
+ * [EXOJCR-570] - AddNamespacePlugin registers namespaces after repostiory start
+ * [EXOJCR-638] - get mixin types through the NodeTypeUtil class
+ * [EXOJCR-662] - Processing SQLException may cause infinite loop.
+ * [EXOJCR-667] - Temporary spooled file can be not found on save
+ * [EXOJCR-698] - URL encoding in SEARCH and PROPFIND responces differs.
+ * [EXOJCR-699] - DAILY TESTS are going too long
+ * [EXOJCR-713] - org.exoplatform.services.rest.impl.RequestDispatcher must return readable messages if resource not found or HTTP method is not allowed for resource
+ * [EXOJCR-754] - JDBC Statements left open : Use of Datasources instead of DBCP and C3P0 pools
+ * [EXOJCR-763] - Reordering samename sibling nodes does not update path of child nodes
+ * [EXOJCR-766] - QPath isDescendantOf returns wrong result on samename siblings
+ * [EXOJCR-768] - A session should not be useable after a logout
+ * [EXOJCR-774] - If-Modified-Since doesn't seem to be well managed in the Wevdav Component
+ * [EXOJCR-781] - LockManagerImpl should call InitialContextInitializer.recall
+ * [EXOJCR-784] - DOC : wrong examples in profiles section
+ * [EXOJCR-785] - Parameter maxVolatileTime is not working correctly
+ * [EXOJCR-788] - Inconsistency issue cans occur on default portal container parameters
+ * [EXOJCR-794] - Field "CONFIG" in the table "JCR_CONFIG" is too short on MySql
+ * [EXOJCR-795] - Unexpected behavior of the method PortalContainer.isScopeValid()
+ * [EXOJCR-796] - Data corruption
+ * [EXOJCR-804] - "No such file or directory" exception for value storage when using MySQL or Postgres DB in WCM demo 2.0
+ * [EXOJCR-805] - Can not search user with keyword that contain special character
+ * [EXOJCR-806] - Problems while copying "ftp-ftp"
+ * [EXOJCR-810] - TestRemoveFromValueStorage failed in configuration without ValueStorage
+ * [EXOJCR-812] - InitialContextBinder.bind should be thread-safe
+ * [EXOJCR-813] - ItemImpl.getParent method must return session pooled parent
+ * [EXOJCR-817] - max-buffer-size from configuration should be use to TransientValueData in import (docview and sysview)
+ * [EXOJCR-819] - HTTPBackupAgent doesn't provide information about last successfully restored repositories if restore was launched in synchronous mode
+ * [EXOJCR-825] - Problems with functional testing - multi, value-storage is turned off
+ * [EXOJCR-835] - TestMultiDbJDBCConnection and TestSingleDbJDBCConnection must drop also JCR_xCONTAINER table on tearDown
+ * [EXOJCR-837] - FUNCTIONAL testing jcr.ext - TestBackupManager in error
+ * [EXOJCR-840] - java.util.ConcurrentModificationException on org.exoplatform.services.jcr.ext.hierarchy.impl.NewUserListener.processUserStructure
+ * [EXOJCR-844] - JCR inside application server is not started due to missing component
+ * [EXOJCR-857] - Exception during PROPFIND request if some property content "%" and after not hex chracters
+ * [EXOJCR-859] - Random failed tests during building jcr
+
+Feature Request
+ * [EXOJCR-156] - Disable deleting of the workspace which is set as system
+ * [EXOJCR-157] - Disable deleting of the repository which is set as default
+ * [EXOJCR-190] - Support returning directly Collection<T> for MediaType.APPLICATION_JSON
+ * [EXOJCR-230] - Refactore and move in main part of exo.ws.rest.core project class AbstractResourceTest
+ * [EXOJCR-311] - Make broadcasting of events of ListenerService asynchronous
+ * [EXOJCR-420] - Check if the ItemReferencePool of the SessionDataManager can be implemented with WeakValueHashMap instead of a WeakHashMap
+ * [EXOJCR-482] - Be able to load a class stored in another groovy file
+ * [EXOJCR-498] - Provide more details when a JCR query is invalid
+ * [EXOJCR-517] - filter to authenticate a signed request from gadgets
+ * [EXOJCR-609] - Allow to keep missing values into the JCR Cache
+ * [EXOJCR-626] - H2 Database support
+ * [EXOJCR-634] - Upload of a file with special characters like " ' " in filename is not supported by the FTPservice
+ * [EXOJCR-635] - Avoid unneccesary checks in persistence
+ * [EXOJCR-745] - Allow cascading imports in configuration files
+ * [EXOJCR-750] - JCR path management improvement
+ * [EXOJCR-782] - No longer force extension developers to redefine the whole dependencies list
+ * [EXOJCR-786] - The method that registers plugins should be overloadable
+ * [EXOJCR-793] - Make possible to configure permissions for Groovy REST services when the SecurityManager is instaled
+ * [EXOJCR-797] - Unable see error message from ProxyService if remote server does not provide Content-Type header.
+ * [EXOJCR-822] - Make implementation of MethodInvokerFilter which can disable access to methods of RESTful services to any users except services deployer
+ * [EXOJCR-823] - Make possible to provide optional attributes for RESTful resources
+ * [EXOJCR-824] - Make expiring mechanism for temporary "under development" services
+ * [EXOJCR-864] - Add method GroovyScript2RestLoader.load with the same signature as it is in 1.12.x
+
+Patch
+ * [EXOJCR-772] - SharedStateLoginModule does swallow an exception during login phase
+
+Task
+ * [EXOJCR-392] - Siblings reordering may update not all the child-items in cache
+ * [EXOJCR-542] - Improve error message concerning a missing "Query Manager Factory"
+ * [EXOJCR-618] - BufferedJBossCache Optimisation: research how to use internal ChangeList as non-persistent cache inside opened transaction
+ * [EXOJCR-689] - Standartize eXo JCR docnmentation projects description.
+ * [EXOJCR-691] - Fix your missing dependencies
+ * [EXOJCR-746] - Remove CommunicationService
+ * [EXOJCR-756] - Make JCR core work properly when the Security Manager is installed
+ * [EXOJCR-764] - Fix the security issue about the JCR System Session
+ * [EXOJCR-767] - Prevent unauthorized access to the method ConversationState.setCurrent(ConverstionState state)
+ * [EXOJCR-770] - Prevent modification of user's identity without required permissions
+ * [EXOJCR-775] - Rework RESTRegistryService for using current repository only. Rewove repository name from PathParam.
+ * [EXOJCR-777] - Prevent modifications of ConversationState's attributes without required permissions
+ * [EXOJCR-778] - Protect the main methods of a repository since they are critical
+ * [EXOJCR-779] - Provide current ConversationState for anonymous user also.
+ * [EXOJCR-780] - Move org.exoplatform.services.jcr.access.SystemIdentity class from exo.jcr.core exo.kernel or exo.core
+ * [EXOJCR-783] - Use cached table for HSLQLDB tables
+ * [EXOJCR-791] - SwapFile and SpoolFile tests
+ * [EXOJCR-807] - Port the article Groovy Scripts as REST Services
+ * [EXOJCR-808] - For Sybase DB "check-sns-new-connection" should be set to false by default
+ * [EXOJCR-809] - OrganizationService's tests should not be excluded
+ * [EXOJCR-815] - Document how to use AS Managed DataSource
+ * [EXOJCR-845] - Remove exo:audit* nodetypes from configuration.
+
+Sub-task
+ * [EXOJCR-627] - Investigate use of in-memory databases for in-memory JCR
+ * [EXOJCR-742] - Port Workspace Data Container articles into docbook
+ * [EXOJCR-757] - Training on Java Security
+ * [EXOJCR-758] - Implement it
+ * [EXOJCR-759] - Test it
+ * [EXOJCR-790] - OS depended paths in policy files for tests.
+ * [EXOJCR-798] - Cluster testing security support
+ * [EXOJCR-799] - MySQL & PostgreSQL tesing problem with security enabled
+ * [EXOJCR-851] - Searching users with special characters in name does not work properly
+ * [EXOJCR-862] - Check Property.getStream() method
+ * [EXOJCR-863] - Check VersionHistory.removeVersionLabel() & VersionHistory.addVersionLabel()
+
+
+Features of eXoJCR 1.12 comparing to 1.11
+=========================================
+
+- Repository clustering based on JBossCache and JBoss Transactions.
+- Lazy-load option for child nodes and properties read, improved items dataflow for read/write operations
+- Alternative data container optimized for read operations (consuming less database queries)
+- Database dialect can be autodetected (if not pointed in the configuration)
+- Support for Values large of 2GiB
+- Portal container configuration improvements (default definitions, link and externaly loaded parameters)
+- Concurrency improvements for Session registry and Values stroage
+- Concurrency improvements for XA transactions support (Repository login and logout faster now)
+- Improved serach based on Lucene 2.4
+- Support of MySQL/InnoDB database for multi-language content
+- Standalone container can use configuration stored in JBossAS server configuration directory by default
+- WebDAV server update-policy can be configured to different versioning behaviour
+- Lot of WebDAV server bugfixes
+- HTTP (RESTful) Backup agent with concole client
+- HTTP (RESTful) Repository management service
+- Support of Java6 and Java5 runtime and development environment
+
+Since version of 1.12 eXoJCR available under LGPL license (version 2.1).
+
+eXoJCR 1.12 tested in on the databases:
+ MySQL 5.1 MYSQL Connector/J 5.1.8
+ Oracle DB 10g (10.2.0.1) Oracle 10g (10.2.0.1)
+ PostgresSQL 8.3.7 JDBC4 Driver, Version 8.3-605
+ DB2 9,7 IBM Data Server Driver for JDBC and SQLJ (JCC Driver) Version: 9.1 (fixpack 3a)
+ MS SQL Server 2005 SP3 JDBC Driver 2.0
+ MS SQL Server 2008 SP1 JDBC Driver 2.0
+ Sybase 15.0.2 JConnect v6.0.5 (Build 26564 / 11 Jun 2009)
+
+
+Release includes:
+* eXo Kernel 2.3.0-GA
+* eXo Core 2.4.0-GA
+* eXo WS 2.2.0-GA
+* eXo JCR 1.14.0-GA
+
+Find all 1.14 task on JIRA:
+https://jira.jboss.org/jira/browse/EXOJCR
+
+1.14.0-GA tasks:
+https://issues.jboss.org/browse/EXOJCR/fixforversion/12316289
+
+JCR Samples
+===========
+
+1. Start Up (Tomcat)
+ Tomcat 6 bundled can be started by executing the following commands:
+
+ $CATALINA_HOME\bin\eXo.bat run (Windows)
+
+ $CATALINA_HOME/bin/eXo.sh run (Unix)
+
+2. After startup, the sample applications will be available by visiting:
+
+ http://localhost:8080/browser - Simple JCR browser
+ Browse the JCR repository that was started with Tomcat
+ http://localhost:8080/fckeditor - FCK editor sample
+ Edits the sample node using FCKEditor and browse it JCR browser
+ http://localhost:8080/rest/jcr/repository/production - WebDAV service,
+ Open in Microsoft Explorer, File-Open-OpenAsWebFolder with url http://localhost:8080/rest/jcr/repository/production
+ Add/read/remove files there and browse it in the JCR browser or FTP.
+ User name/password: root/exo
+ ftp://localhost:2121 - FTP server
+ Open the repository in FTP client and browse the JCR repository started with Tomcat as FTP content,
+ add/read/remove files there and browse it in the JCR browser or WebDAV.
+
+EAR deploy
+==========
+
+eXo JCR was tested under JBoss-5.1.0.GA application server
+
+JBoss-5.1.0.GA
+
+ 1. Configuration
+
+ * Copy exo.jcr.ear.ear and jcr-ds.xml into $jboss_home/server/default/deploy
+ * Copy run.conf and run.conf.bato $jboss_home/bin
+ * Create $jboss_home/server/default/conf/exo-conf folder if it doesn't exist.
+ * Put exo-configuration.xml into $jboss_home/server/default/conf/exo-conf/exo-configuration.xml
+ * Configure JAAS by inserting XML fragment shown below into $jboss_home/server/default/conf/login-config.xml
+
+---------
+<application-policy name="exo-domain">
+ <authentication>
+ <login-module code="org.exoplatform.services.security.j2ee.JbossLoginModule" flag="required"></login-module>
+ </authentication>
+ </application-policy>
+---------
+
+ 2. Start Up
+
+ Execute
+ * bin/run.bat on Windows
+ or
+ * bin/run.sh on Unix
+
+Resources
+=========
+
+ Company site http://www.exoplatform.com
+ Documentation wiki http://wiki.exoplatform.org
+ Community JIRA https://jira.jboss.org/jira/browse/EXOJCR, http://jira.exoplatform.org
+ Comminity site http://www.exoplatform.org
+ Community forum http://www.exoplatform.com/portal/public/en/forum
+ JavaDoc site http://docs.exoplatform.org
+
\ No newline at end of file
12 years, 9 months
exo-jcr SVN: r4878 - jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-08 08:36:00 -0400 (Thu, 08 Sep 2011)
New Revision: 4878
Modified:
jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml
jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml
Log:
Fix configuration for MSSQL
Modified: jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml 2011-09-08 12:22:40 UTC (rev 4877)
+++ jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml 2011-09-08 12:36:00 UTC (rev 4878)
@@ -249,7 +249,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1_ws;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -276,7 +276,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws1;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1_ws1;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -303,7 +303,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws2;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1_ws2;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -330,7 +330,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws3;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1_ws3;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -385,7 +385,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db2_ws;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db2_ws;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -412,7 +412,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db2_ws1;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db2_ws1;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -439,7 +439,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck_ws;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1tck_ws;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -466,7 +466,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck_ws1;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1tck_ws1;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -493,7 +493,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck_ws2;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1tck_ws2;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -601,7 +601,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=testdbcleaner;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=testdbcleaner;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
<property name="maxActive" value="20" />
Modified: jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml 2011-09-08 12:22:40 UTC (rev 4877)
+++ jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml 2011-09-08 12:36:00 UTC (rev 4878)
@@ -249,7 +249,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
<property name="maxActive" value="20" />
@@ -305,7 +305,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db2;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db2;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -332,7 +332,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=db1tck;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
</properties-param>
@@ -440,7 +440,7 @@
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
- <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=testdbcleaner_sjdbc;" />
+ <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=testdbcleaner_sjdbc;" />
<property name="username" value="tester" />
<property name="password" value="tester" />
<property name="maxActive" value="20" />
12 years, 9 months
exo-jcr SVN: r4877 - in jcr/trunk/exo.jcr.component.core: src/test/resources/conf/standalone and 1 other directory.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-08 08:22:40 -0400 (Thu, 08 Sep 2011)
New Revision: 4877
Added:
jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml
jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml
Modified:
jcr/trunk/exo.jcr.component.core/pom.xml
Log:
Add profiles for testing on MSSQL
Modified: jcr/trunk/exo.jcr.component.core/pom.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core/pom.xml 2011-09-08 09:15:24 UTC (rev 4876)
+++ jcr/trunk/exo.jcr.component.core/pom.xml 2011-09-08 12:22:40 UTC (rev 4877)
@@ -251,13 +251,6 @@
<version>1.2</version>
<scope>test</scope>
</dependency -->
- <!-- For MS SQL 2005 support (Microsoft JDBC driver) (local-jcr repository) -->
- <!--dependency>
- <groupId>com.microsoft</groupId>
- <artifactId>sqljdbc</artifactId>
- <version>3.0.1301.101</version>
- <scope>test</scope>
- </dependency-->
<!-- For Apache Derby support (aka JavaDB) -->
<!-- dependency>
<groupId>org.apache.derby</groupId>
@@ -839,6 +832,34 @@
</dependencies>
</profile>
<profile>
+ <id>mssql</id>
+ <properties>
+ <jcr.test.configuration.file>/conf/standalone/test-configuration-mssql-jbc.xml</jcr.test.configuration.file>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>com.microsoft</groupId>
+ <artifactId>sqljdbc</artifactId>
+ <version>3.0.1301.101</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
+ <id>mssql-sjdbc</id>
+ <properties>
+ <jcr.test.configuration.file>/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml</jcr.test.configuration.file>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>com.microsoft</groupId>
+ <artifactId>sqljdbc</artifactId>
+ <version>3.0.1301.101</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
<id>db2</id>
<properties>
<jcr.test.configuration.file>/conf/standalone/test-configuration-db2-jbc.xml</jcr.test.configuration.file>
Added: jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml (rev 0)
+++ jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-jbc.xml 2011-09-08 12:22:40 UTC (rev 4877)
@@ -0,0 +1,664 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+
+ Copyright (C) 2009 eXo Platform SAS.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+
+-->
+<configuration
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd http://www.exoplaform.org/xml/ns/kernel_1_0.xsd"
+ xmlns="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd">
+ <component>
+ <key>org.exoplatform.services.log.LogConfigurationInitializer</key>
+ <type>org.exoplatform.services.log.LogConfigurationInitializer</type>
+ <init-params>
+ <value-param>
+ <name>logger</name>
+ <value>org.exoplatform.services.log.impl.BufferedLog4JLogger</value>
+ </value-param>
+ <value-param>
+ <name>configurator</name>
+ <value>org.exoplatform.services.log.impl.Log4JConfigurator</value>
+ </value-param>
+ <properties-param>
+ <name>properties</name>
+ <description>Log4J properties</description>
+ <property name="log4j.rootLogger" value="INFO, stdout, file"/>
+
+ <property name="log4j.appender.stdout" value="org.apache.log4j.ConsoleAppender"/>
+ <property name="log4j.appender.stdout.threshold" value="DEBUG"/>
+
+ <property name="log4j.appender.stdout.layout" value="org.apache.log4j.PatternLayout"/>
+ <property name="log4j.appender.stdout.layout.ConversionPattern"
+ value="%d{dd.MM.yyyy HH:mm:ss} *%-5p* [%t] %c{1}: %m (%F, line %L) %n"/>
+
+ <property name="log4j.appender.file" value="org.apache.log4j.FileAppender"/>
+ <property name="log4j.appender.file.File" value="target/jcr.log"/>
+
+ <property name="log4j.appender.file.layout" value="org.apache.log4j.PatternLayout"/>
+ <property name="log4j.appender.file.layout.ConversionPattern"
+ value="%d{dd.MM.yyyy HH:mm:ss} *%-5p* [%t] %c{1}: %m (%F, line %L) %n"/>
+
+ <!-- property name="log4j.category.jcr.FileCleaner" value="DEBUG"/ -->
+
+ <!-- property name="log4j.category.jcr.JDBCStorageConnection" value="DEBUG"/>
+ <property name="log4j.category.jcr.NodeImpl" value="DEBUG"/ -->
+
+ <!-- property name="log4j.category.jcr.WorkspaceStorageCacheImpl" value="DEBUG"/ -->
+ <!-- property name="log4j.category.database.DBSchemaCreator" value="DEBUG"/ -->
+ <!-- property name="log4j.category.jcr.WorkspaceDataReplicator" value="DEBUG"/ -->
+
+ <!-- property name="log4j.category.jcr.WorkspaceStorageCacheImpl" value="DEBUG"/ -->
+ <!-- property name="log4j.category.jcr.WorkspacePersistentDataManager" value="DEBUG"/ -->
+ <!-- property name="log4j.category.jcr.SessionDataManager" value="DEBUG"/ -->
+ </properties-param>
+
+ <!-- value-param>
+ <name>logger</name>
+ <value>org.exoplatform.services.log.impl.BufferedSimpleLog</value>
+ </value-param>
+ <value-param>
+ <name>configurator</name>
+ <value>org.exoplatform.services.log.impl.SimpleLogConfigurator</value>
+ </value-param>
+ <properties-param>
+ <name>properties</name>
+ <description>SimpleLog properties</description>
+ <property name="org.apache.commons.logging.simplelog.defaultlog" value="debug"/>
+ <property name="org.apache.commons.logging.simplelog.showdatetime" value="true"/>
+ </properties-param -->
+
+ <!-- value-param>
+ <name>logger</name>
+ <value>org.exoplatform.services.log.impl.BufferedJdk14Logger</value>
+ </value-param>
+ <value-param>
+ <name>configurator</name>
+ <value>org.exoplatform.services.log.impl.Jdk14Configurator</value>
+ </value-param>
+ <properties-param>
+ <name>properties</name>
+ <description>jdk1.4 Logger properties</description>
+ <property name="handlers" value="java.util.logging.ConsoleHandler"/>
+ <property name=".level" value="FINE"/>
+ <property name="java.util.logging.ConsoleHandler.level" value="FINE"/>
+ </properties-param -->
+
+ </init-params>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.RepositoryService</key>
+ <type>org.exoplatform.services.jcr.impl.RepositoryServiceImpl</type>
+ <component-plugins>
+ <component-plugin>
+ <name>add.namespaces</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.jcr.impl.AddNamespacesPlugin</type>
+ <init-params>
+ <properties-param>
+ <name>namespaces</name>
+ <property name="test" value="http://www.apache.org/jackrabbit/test"/>
+ <property name="exojcrtest" value="http://www.exoplatform.org/jcr/test/1.0"/>
+ <property name="rma" value="http://www.rma.com/jcr/"/>
+ <property name="metadata" value="http://www.exoplatform.com/jcr/metadata/1.1/"/>
+ <property name="dc" value="http://purl.org/dc/elements/1.1/"/>
+ <property name="publication" value="http://www.exoplatform.com/jcr/publication/1.1/"/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>add.nodeType</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.jcr.impl.AddNodeTypePlugin</type>
+ <init-params>
+ <values-param>
+ <name>autoCreatedInNewRepository</name>
+ <description>Node types configuration file</description>
+ <value>jar:/conf/test/nodetypes-tck.xml</value>
+ <value>jar:/conf/test/nodetypes-impl.xml</value>
+ <value>jar:/conf/test/nodetypes-usecase.xml</value>
+ <value>jar:/conf/test/nodetypes-config.xml</value>
+ <value>jar:/conf/test/nodetypes-config-extended.xml</value>
+ <value>jar:/conf/test/wcm-nodetypes.xml</value>
+ <value>jar:/conf/test/nodetypes-publication-config.xml</value>
+ <value>jar:/conf/test/publication-plugins-nodetypes-config.xml</value>
+ </values-param>
+
+ <values-param>
+ <name>testInitNodeTypesRepository</name>
+ <description>
+ Node types configuration file for repository with name testInitNodeTypesRepository
+ </description>
+ <value>jar:/conf/test/nodetypes-test.xml</value>
+ </values-param>
+
+ <values-param>
+ <name>testInitNodeTypesRepositoryTest2</name>
+ <description>
+ Node types configuration file for repository with name testInitNodeTypesRepositoryTest2
+ </description>
+ <value>jar:/conf/test/nodetypes-test2.xml</value>
+ </values-param>
+
+ <!--values-param>
+ <name>testInitNodeTypesRepositoryTest3</name>
+ <description>Node types from ext. Needed bacause core starup earlie than ext</description>
+ <value>jar:/conf/test/nodetypes-test3_ext.xml</value>
+ </values-param-->
+
+ </init-params>
+ </component-plugin>
+ </component-plugins>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.config.RepositoryServiceConfiguration</key>
+ <type>org.exoplatform.services.jcr.impl.config.RepositoryServiceConfigurationImpl</type>
+ <init-params>
+ <value-param>
+ <name>conf-path</name>
+ <description>JCR configuration file</description>
+ <value>jar:/conf/standalone/test-jcr-config-jbc.xml</value>
+ </value-param>
+ <properties-param>
+ <name>working-conf</name>
+ <description>working-conf</description>
+ <property name="dialect" value="auto" />
+ <property name="source-name" value="jdbcjcr"/>
+ <property name="persister-class-name" value="org.exoplatform.services.jcr.impl.config.JDBCConfigurationPersister"/>
+ </properties-param>
+ </init-params>
+ </component>
+
+ <component>
+ <type>org.exoplatform.services.organization.impl.mock.DummyOrganizationService</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.security.Authenticator</key>
+ <type>org.exoplatform.services.organization.auth.OrganizationAuthenticatorImpl</type>
+ </component>
+
+ <component>
+ <type>org.exoplatform.services.jcr.impl.ext.action.SessionActionCatalog</type>
+ </component>
+
+ <component>
+ <key>org.jboss.cache.transaction.TransactionManagerLookup</key>
+ <type>org.jboss.cache.transaction.JBossStandaloneJTAManagerLookup</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.transaction.TransactionService</key>
+ <type>org.exoplatform.services.transaction.jbosscache.JBossTransactionsService</type>
+ <init-params>
+ <value-param>
+ <name>timeout</name>
+ <value>3000</value>
+ </value-param>
+ </init-params>
+ </component>
+
+ <!-- component>
+ <key>org.exoplatform.services.transaction.TransactionService</key>
+ <type>org.exoplatform.services.transaction.impl.jotm.TransactionServiceJotmImpl</type>
+ <init-params>
+ <value-param>
+ <name>timeout</name>
+ <value>300</value>
+ </value-param>
+ </init-params>
+ </component -->
+
+ <external-component-plugins>
+ <target-component>org.exoplatform.services.naming.InitialContextInitializer</target-component>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr1</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws1;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws2;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr3</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1_ws3;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcrtest</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jcrtest"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ <property name="maxActive" value="100" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcrdb2</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db2_ws;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr1db2</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db2_ws1;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcrtck</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck_ws;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr1tck</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck_ws1;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2tck</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck_ws2;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2export1</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jdbcjcr2export1"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2export2</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jdbcjcr2export2"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2export3</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jdbcjcr2export3"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>testdbcleaner</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=testdbcleaner;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ <property name="maxActive" value="20" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.jcr</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>repo</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.jcr.Repository</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.exoplatform.services.jcr.impl.jndi.BindableRepositoryFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="repositoryName" value="db1"/>
+ <!-- property name="containerConfig" value="exo-configuration.xml"/ -->
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>rmi.jcr</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>rmirepository</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.jcr.Repository</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.exoplatform.services.jcr.rmi.RepositoryFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="url" value="//localhost:9999/repository"/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ </external-component-plugins>
+
+ <remove-configuration>org.exoplatform.services.scheduler.JobSchedulerService</remove-configuration>
+ <!--<import>jar:/conf/database-configuration.hsql.xml</import> -->
+</configuration>
Added: jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml (rev 0)
+++ jcr/trunk/exo.jcr.component.core/src/test/resources/conf/standalone/test-configuration-mssql-sjdbc-jbc.xml 2011-09-08 12:22:40 UTC (rev 4877)
@@ -0,0 +1,503 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+
+ Copyright (C) 2009 eXo Platform SAS.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+
+-->
+<configuration
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd http://www.exoplaform.org/xml/ns/kernel_1_0.xsd"
+ xmlns="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd">
+ <component>
+ <key>org.exoplatform.services.log.LogConfigurationInitializer</key>
+ <type>org.exoplatform.services.log.LogConfigurationInitializer</type>
+ <init-params>
+ <value-param>
+ <name>logger</name>
+ <value>org.exoplatform.services.log.impl.BufferedLog4JLogger</value>
+ </value-param>
+ <value-param>
+ <name>configurator</name>
+ <value>org.exoplatform.services.log.impl.Log4JConfigurator</value>
+ </value-param>
+ <properties-param>
+ <name>properties</name>
+ <description>Log4J properties</description>
+ <property name="log4j.rootLogger" value="INFO, stdout, file"/>
+
+ <property name="log4j.appender.stdout" value="org.apache.log4j.ConsoleAppender"/>
+ <property name="log4j.appender.stdout.threshold" value="DEBUG"/>
+
+ <property name="log4j.appender.stdout.layout" value="org.apache.log4j.PatternLayout"/>
+ <property name="log4j.appender.stdout.layout.ConversionPattern"
+ value="%d{dd.MM.yyyy HH:mm:ss} *%-5p* [%t] %c{1}: %m (%F, line %L) %n"/>
+
+ <property name="log4j.appender.file" value="org.apache.log4j.FileAppender"/>
+ <property name="log4j.appender.file.File" value="target/jcr.log"/>
+
+ <property name="log4j.appender.file.layout" value="org.apache.log4j.PatternLayout"/>
+ <property name="log4j.appender.file.layout.ConversionPattern"
+ value="%d{dd.MM.yyyy HH:mm:ss} *%-5p* [%t] %c{1}: %m (%F, line %L) %n"/>
+
+ <!-- property name="log4j.category.jcr.FileCleaner" value="DEBUG"/ -->
+
+ <!-- property name="log4j.category.jcr.JDBCStorageConnection" value="DEBUG"/>
+ <property name="log4j.category.jcr.NodeImpl" value="DEBUG"/ -->
+
+ <!-- property name="log4j.category.jcr.WorkspaceStorageCacheImpl" value="DEBUG"/ -->
+ <!-- property name="log4j.category.database.DBSchemaCreator" value="DEBUG"/ -->
+ <!-- property name="log4j.category.jcr.WorkspaceDataReplicator" value="DEBUG"/ -->
+
+ <!-- property name="log4j.category.jcr.WorkspaceStorageCacheImpl" value="DEBUG"/ -->
+ <!-- property name="log4j.category.jcr.WorkspacePersistentDataManager" value="DEBUG"/ -->
+ <!-- property name="log4j.category.jcr.SessionDataManager" value="DEBUG"/ -->
+ </properties-param>
+
+ <!-- value-param>
+ <name>logger</name>
+ <value>org.exoplatform.services.log.impl.BufferedSimpleLog</value>
+ </value-param>
+ <value-param>
+ <name>configurator</name>
+ <value>org.exoplatform.services.log.impl.SimpleLogConfigurator</value>
+ </value-param>
+ <properties-param>
+ <name>properties</name>
+ <description>SimpleLog properties</description>
+ <property name="org.apache.commons.logging.simplelog.defaultlog" value="debug"/>
+ <property name="org.apache.commons.logging.simplelog.showdatetime" value="true"/>
+ </properties-param -->
+
+ <!-- value-param>
+ <name>logger</name>
+ <value>org.exoplatform.services.log.impl.BufferedJdk14Logger</value>
+ </value-param>
+ <value-param>
+ <name>configurator</name>
+ <value>org.exoplatform.services.log.impl.Jdk14Configurator</value>
+ </value-param>
+ <properties-param>
+ <name>properties</name>
+ <description>jdk1.4 Logger properties</description>
+ <property name="handlers" value="java.util.logging.ConsoleHandler"/>
+ <property name=".level" value="FINE"/>
+ <property name="java.util.logging.ConsoleHandler.level" value="FINE"/>
+ </properties-param -->
+
+ </init-params>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.RepositoryService</key>
+ <type>org.exoplatform.services.jcr.impl.RepositoryServiceImpl</type>
+ <component-plugins>
+ <component-plugin>
+ <name>add.namespaces</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.jcr.impl.AddNamespacesPlugin</type>
+ <init-params>
+ <properties-param>
+ <name>namespaces</name>
+ <property name="test" value="http://www.apache.org/jackrabbit/test"/>
+ <property name="exojcrtest" value="http://www.exoplatform.org/jcr/test/1.0"/>
+ <property name="rma" value="http://www.rma.com/jcr/"/>
+ <property name="metadata" value="http://www.exoplatform.com/jcr/metadata/1.1/"/>
+ <property name="dc" value="http://purl.org/dc/elements/1.1/"/>
+ <property name="publication" value="http://www.exoplatform.com/jcr/publication/1.1/"/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>add.nodeType</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.jcr.impl.AddNodeTypePlugin</type>
+ <init-params>
+ <values-param>
+ <name>autoCreatedInNewRepository</name>
+ <description>Node types configuration file</description>
+ <value>jar:/conf/test/nodetypes-tck.xml</value>
+ <value>jar:/conf/test/nodetypes-impl.xml</value>
+ <value>jar:/conf/test/nodetypes-usecase.xml</value>
+ <value>jar:/conf/test/nodetypes-config.xml</value>
+ <value>jar:/conf/test/nodetypes-config-extended.xml</value>
+ <value>jar:/conf/test/wcm-nodetypes.xml</value>
+ <value>jar:/conf/test/nodetypes-publication-config.xml</value>
+ <value>jar:/conf/test/publication-plugins-nodetypes-config.xml</value>
+ </values-param>
+
+ <values-param>
+ <name>testInitNodeTypesRepository</name>
+ <description>
+ Node types configuration file for repository with name testInitNodeTypesRepository
+ </description>
+ <value>jar:/conf/test/nodetypes-test.xml</value>
+ </values-param>
+
+ <values-param>
+ <name>testInitNodeTypesRepositoryTest2</name>
+ <description>
+ Node types configuration file for repository with name testInitNodeTypesRepositoryTest2
+ </description>
+ <value>jar:/conf/test/nodetypes-test2.xml</value>
+ </values-param>
+
+ <!--values-param>
+ <name>testInitNodeTypesRepositoryTest3</name>
+ <description>Node types from ext. Needed bacause core starup earlie than ext</description>
+ <value>jar:/conf/test/nodetypes-test3_ext.xml</value>
+ </values-param-->
+
+ </init-params>
+ </component-plugin>
+ </component-plugins>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.config.RepositoryServiceConfiguration</key>
+ <type>org.exoplatform.services.jcr.impl.config.RepositoryServiceConfigurationImpl</type>
+ <init-params>
+ <value-param>
+ <name>conf-path</name>
+ <description>JCR configuration file</description>
+ <value>jar:/conf/standalone/test-jcr-config-sjdbc-jbc.xml</value>
+ </value-param>
+ <properties-param>
+ <name>working-conf</name>
+ <description>working-conf</description>
+ <property name="dialect" value="auto" />
+ <property name="source-name" value="jdbcjcr"/>
+ <property name="persister-class-name" value="org.exoplatform.services.jcr.impl.config.JDBCConfigurationPersister"/>
+ </properties-param>
+ </init-params>
+ </component>
+
+ <component>
+ <type>org.exoplatform.services.organization.impl.mock.DummyOrganizationService</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.security.Authenticator</key>
+ <type>org.exoplatform.services.organization.auth.OrganizationAuthenticatorImpl</type>
+ </component>
+
+ <component>
+ <type>org.exoplatform.services.jcr.impl.ext.action.SessionActionCatalog</type>
+ </component>
+
+ <component>
+ <key>org.jboss.cache.transaction.TransactionManagerLookup</key>
+ <type>org.jboss.cache.transaction.JBossStandaloneJTAManagerLookup</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.transaction.TransactionService</key>
+ <type>org.exoplatform.services.transaction.jbosscache.JBossTransactionsService</type>
+ <init-params>
+ <value-param>
+ <name>timeout</name>
+ <value>3000</value>
+ </value-param>
+ </init-params>
+ </component>
+
+ <!-- component>
+ <key>org.exoplatform.services.transaction.TransactionService</key>
+ <type>org.exoplatform.services.transaction.impl.jotm.TransactionServiceJotmImpl</type>
+ <init-params>
+ <value-param>
+ <name>timeout</name>
+ <value>300</value>
+ </value-param>
+ </init-params>
+ </component -->
+
+ <external-component-plugins>
+ <target-component>org.exoplatform.services.naming.InitialContextInitializer</target-component>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ <property name="maxActive" value="20" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcrtest</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jcrtest"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ <property name="maxActive" value="100" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcrdb2</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db2;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcrtck</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=db1tck;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2export1</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jdbcjcr2export1"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2export2</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jdbcjcr2export2"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>jdbcjcr2export3</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
+ <property name="url" value="jdbc:hsqldb:file:target/temp/data/jdbcjcr2export3"/>
+ <property name="username" value="sa"/>
+ <property name="password" value=""/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.datasource</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>testdbcleaner</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.sql.DataSource</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
+ <property name="url" value="jdbc:sqlserver://dbs-jcr.exoplatform.com.ua:1433;databaseName=testdbcleaner_sjdbc;" />
+ <property name="username" value="tester" />
+ <property name="password" value="tester" />
+ <property name="maxActive" value="20" />
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>bind.jcr</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>repo</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.jcr.Repository</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.exoplatform.services.jcr.impl.jndi.BindableRepositoryFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="repositoryName" value="db1"/>
+ <!-- property name="containerConfig" value="exo-configuration.xml"/ -->
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ <component-plugin>
+ <name>rmi.jcr</name>
+ <set-method>addPlugin</set-method>
+ <type>org.exoplatform.services.naming.BindReferencePlugin</type>
+ <init-params>
+ <value-param>
+ <name>bind-name</name>
+ <value>rmirepository</value>
+ </value-param>
+ <value-param>
+ <name>class-name</name>
+ <value>javax.jcr.Repository</value>
+ </value-param>
+ <value-param>
+ <name>factory</name>
+ <value>org.exoplatform.services.jcr.rmi.RepositoryFactory</value>
+ </value-param>
+ <properties-param>
+ <name>ref-addresses</name>
+ <description>ref-addresses</description>
+ <property name="url" value="//localhost:9999/repository"/>
+ </properties-param>
+ </init-params>
+ </component-plugin>
+ </external-component-plugins>
+
+ <remove-configuration>org.exoplatform.services.scheduler.JobSchedulerService</remove-configuration>
+ <!--<import>jar:/conf/database-configuration.hsql.xml</import> -->
+</configuration>
12 years, 9 months
exo-jcr SVN: r4876 - jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-09-08 05:15:24 -0400 (Thu, 08 Sep 2011)
New Revision: 4876
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java
Log:
EXOJCR-1521: Fix reverted for sybase since it was the root cause of the excessive slowness
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java 2011-09-08 09:15:24 UTC (rev 4876)
@@ -133,7 +133,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_MVALUE V, JCR_MITEM P, "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + " where P.PARENT_ID = "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME
- + ".ID and P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by " + SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + ".ID";
+ + ".ID and P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
DELETE_TEMPORARY_TABLE_A = "drop table " + SybaseJDBCConnectionHelper.TEMP_A_TABLE_NAME;
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java 2011-09-08 09:15:24 UTC (rev 4876)
@@ -133,7 +133,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_SVALUE V, JCR_SITEM P, "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + " where P.PARENT_ID = "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME
- + ".ID and P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by " + SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + ".ID";
+ + ".ID and P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
DELETE_TEMPORARY_TABLE_A = "drop table " + SybaseJDBCConnectionHelper.TEMP_A_TABLE_NAME;
12 years, 9 months
exo-jcr SVN: r4875 - in jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl: storage/jdbc/optimisation/db and 1 other directory.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-09-08 05:00:02 -0400 (Thu, 08 Sep 2011)
New Revision: 4875
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/RepositoryServiceImpl.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2MultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2SingleDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLMultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLSingleDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLMultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLSingleDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleMultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleSingleDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java
Log:
EXOJCR-1521: Right prefix added on each queries and typo issue fixed in RepositoryServiceImpl
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/RepositoryServiceImpl.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/RepositoryServiceImpl.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/RepositoryServiceImpl.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -170,7 +170,7 @@
//managerStartChanges.removeListeners(repositoryContainer);
repositoryContainers.remove(rEntry.getName());
- throw new RepositoryConfigurationException("Repository conatainer " + rEntry.getName() + " was not started.",
+ throw new RepositoryConfigurationException("Repository container " + rEntry.getName() + " was not started.",
t);
}
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2MultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2MultiDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2MultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -75,7 +75,7 @@
+ " join (select A.* from"
+ " (select Row_Number() over (order by I.ID) as r__, I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM"
+ " from JCR_MITEM I where I.I_CLASS=1) as A where A.r__ <= ? and A.r__ > ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2SingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2SingleDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2SingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -76,7 +76,7 @@
+ " (select Row_Number() over (order by I.ID) as r__, I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM"
+ " from JCR_SITEM I where I.CONTAINER_NAME=? and I.I_CLASS=1) as A where A.r__ <= ? and A.r__ > ?"
+ ") J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLMultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLMultiDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLMultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -73,7 +73,7 @@
+ " join (select A.* from"
+ " (select Row_Number() over (order by I.ID) as r__, I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM"
+ " from JCR_MITEM I where I.I_CLASS=1) as A where A.r__ <= ? and A.r__ > ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLSingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLSingleDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MSSQLSingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -76,7 +76,7 @@
+ " (select Row_Number() over (order by I.ID) as r__, I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM"
+ " from JCR_SITEM I where I.CONTAINER_NAME=? and I.I_CLASS=1) as A where A.r__ <= ? and A.r__ > ?"
+ " ) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MultiDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -202,7 +202,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_MVALUE V, JCR_MITEM P"
+ " join (select I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM from JCR_MITEM I"
+ " where I.I_CLASS=1 AND I.ID > ? order by I.ID LIMIT ? OFFSET ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by J.ID";
FIND_PROPERTY_BY_ID =
"select I.P_TYPE, V.STORAGE_DESC from JCR_MITEM I, JCR_MVALUE V where I.ID = ? and V.PROPERTY_ID = I.ID";
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLMultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLMultiDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLMultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -83,7 +83,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_MVALUE V, JCR_MITEM P"
+ " join (select I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM from JCR_MITEM I force index(PRIMARY)"
+ " where I.I_CLASS=1 AND I.ID > ? order by I.ID LIMIT ? OFFSET ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLSingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLSingleDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/MySQLSingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -83,7 +83,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_SVALUE V, JCR_SITEM P"
+ " join (select I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM from JCR_SITEM I force index(PRIMARY)"
+ " where I.CONTAINER_NAME=? AND I.I_CLASS=1 AND I.ID > ? order by I.ID LIMIT ? OFFSET ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleMultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleMultiDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleMultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -96,7 +96,7 @@
+ " join ( select * from ( select A.*, ROWNUM r__ from ("
+ " select I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM from JCR_MITEM I "
+ " where I.I_CLASS=1 order by I.ID) A where ROWNUM <= ?) where r__ > ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleSingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleSingleDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/OracleSingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -97,7 +97,7 @@
+ " select I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM from JCR_SITEM I "
+ " where I.CONTAINER_NAME=? and I.I_CLASS=1 order by I.ID"
+ " ) A where ROWNUM <= ?) where r__ > ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by J.ID";
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -206,7 +206,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_SVALUE V, JCR_SITEM P"
+ " join (select I.ID, I.PARENT_ID, I.NAME, I.VERSION, I.I_INDEX, I.N_ORDER_NUM from JCR_SITEM I"
+ " where I.CONTAINER_NAME=? AND I.I_CLASS=1 AND I.ID > ? order by I.ID LIMIT ? OFFSET ?) J on P.PARENT_ID = J.ID"
- + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
+ + " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by J.ID";
FIND_PROPERTY_BY_ID =
"select I.P_TYPE, V.STORAGE_DESC from JCR_SITEM I, JCR_SVALUE V where I.CONTAINER_NAME=? and I.ID = ? and V.PROPERTY_ID = I.ID";
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseMultiDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -133,7 +133,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_MVALUE V, JCR_MITEM P, "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + " where P.PARENT_ID = "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME
- + ".ID and P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by ID";
+ + ".ID and P.I_CLASS=2 and V.PROPERTY_ID=P.ID order by " + SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + ".ID";
DELETE_TEMPORARY_TABLE_A = "drop table " + SybaseJDBCConnectionHelper.TEMP_A_TABLE_NAME;
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java 2011-09-07 12:20:21 UTC (rev 4874)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SybaseSingleDbJDBCConnection.java 2011-09-08 09:00:02 UTC (rev 4875)
@@ -133,7 +133,7 @@
+ " V.DATA, V.ORDER_NUM, V.STORAGE_DESC from JCR_SVALUE V, JCR_SITEM P, "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + " where P.PARENT_ID = "
+ SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME
- + ".ID and P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by ID";
+ + ".ID and P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by " + SybaseJDBCConnectionHelper.TEMP_B_TABLE_NAME + ".ID";
DELETE_TEMPORARY_TABLE_A = "drop table " + SybaseJDBCConnectionHelper.TEMP_A_TABLE_NAME;
12 years, 9 months
exo-jcr SVN: r4874 - jcr/trunk/exo.jcr.component.core.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-07 08:20:21 -0400 (Wed, 07 Sep 2011)
New Revision: 4874
Modified:
jcr/trunk/exo.jcr.component.core/pom.xml
Log:
add missing dependency for pgsql-sjdbc profile
Modified: jcr/trunk/exo.jcr.component.core/pom.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core/pom.xml 2011-09-06 13:59:01 UTC (rev 4873)
+++ jcr/trunk/exo.jcr.component.core/pom.xml 2011-09-07 12:20:21 UTC (rev 4874)
@@ -897,6 +897,14 @@
<properties>
<jcr.test.configuration.file>/conf/standalone/test-configuration-pgsql-sjdbc-jbc.xml</jcr.test.configuration.file>
</properties>
+ <dependencies>
+ <dependency>
+ <groupId>postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ <version>8.3-606.jdbc3</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
</profile>
<profile>
<id>cache-disabled</id>
12 years, 9 months
exo-jcr SVN: r4873 - in jcr/branches/1.12.x/patch/1.12.11-GA: JCR-1660 and 1 other directory.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-06 09:59:01 -0400 (Tue, 06 Sep 2011)
New Revision: 4873
Added:
jcr/branches/1.12.x/patch/1.12.11-GA/JCR-1660/
jcr/branches/1.12.x/patch/1.12.11-GA/JCR-1660/JCR-1660.patch
Log:
JCR-1660: patch proposed
Added: jcr/branches/1.12.x/patch/1.12.11-GA/JCR-1660/JCR-1660.patch
===================================================================
--- jcr/branches/1.12.x/patch/1.12.11-GA/JCR-1660/JCR-1660.patch (rev 0)
+++ jcr/branches/1.12.x/patch/1.12.11-GA/JCR-1660/JCR-1660.patch 2011-09-06 13:59:01 UTC (rev 4873)
@@ -0,0 +1,42 @@
+Index: exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/ItemImpl.java
+===================================================================
+--- exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/ItemImpl.java (revision 4647)
++++ exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/ItemImpl.java (working copy)
+@@ -410,6 +410,18 @@
+ ConstraintViolationException, RepositoryException
+ {
+
++ // Check if checked-in (versionable)
++ if (!parentNode.checkedOut())
++ {
++ throw new VersionException("Node " + parentNode.getPath() + " or its nearest ancestor is checked-in");
++ }
++
++ // Check is locked
++ if (!parentNode.checkLocking())
++ {
++ throw new LockException("Node " + parentNode.getPath() + " is locked ");
++ }
++
+ QPath qpath = QPath.makeChildPath(parentNode.getInternalPath(), propertyName);
+
+ int state;
+@@ -485,18 +497,6 @@
+ + locationFactory.createJCRPath(qpath).getAsString(false));
+ }
+
+- // Check if checked-in (versionable)
+- if (!parentNode.checkedOut())
+- {
+- throw new VersionException("Node " + parentNode.getPath() + " or its nearest ancestor is checked-in");
+- }
+-
+- // Check is locked
+- if (!parentNode.checkLocking())
+- {
+- throw new LockException("Node " + parentNode.getPath() + " is locked ");
+- }
+-
+ List<ValueData> valueDataList = new ArrayList<ValueData>();
+
+ // cast to required type if neccessary
12 years, 9 months
exo-jcr SVN: r4872 - in core/trunk: exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache and 4 other directories.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-06 08:42:34 -0400 (Tue, 06 Sep 2011)
New Revision: 4872
Modified:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableGroupHandlerImpl.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipHandlerImpl.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserHandlerImpl.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserProfileHandlerImpl.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/impl/mock/DummyOrganizationService.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/GroupDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java
Log:
EXOJCR-1512: unregister listener on organization service
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupHandler.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -173,4 +173,11 @@
* @param listener the group event listener instance.
*/
public void addGroupEventListener(GroupEventListener listener);
+
+ /**
+ * Use this method to unregister a group event listener
+ *
+ * @param listener the group event listener instance.
+ */
+ public void removeGroupEventListener(GroupEventListener listener);
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipHandler.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -165,4 +165,11 @@
* @param listener the listener instance.
*/
public void addMembershipEventListener(MembershipEventListener listener);
+
+ /**
+ * Use this method to unregister a membership event listener.
+ *
+ * @param listener the listener instance.
+ */
+ public void removeMembershipEventListener(MembershipEventListener listener);
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -122,4 +122,11 @@
* @param listener the listener instance.
*/
public void addMembershipTypeEventListener(MembershipTypeEventListener listener);
+
+ /**
+ * Use this method to unregister a membership type event listener.
+ *
+ * @param listener the listener instance.
+ */
+ public void removeMembershipTypeEventListener(MembershipTypeEventListener listener);
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserHandler.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -202,4 +202,11 @@
* @param listener
*/
public void addUserEventListener(UserEventListener listener);
+
+ /**
+ * This method is used to unregister an user event listener
+ *
+ * @param listener
+ */
+ public void removeUserEventListener(UserEventListener listener);
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileHandler.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -101,4 +101,12 @@
* @see UserProfileEventListener
*/
public void addUserProfileEventListener(UserProfileEventListener listener);
+
+ /**
+ * This method is used to unregister listener.
+ *
+ * @param listener The listener instance
+ * @see UserProfileEventListener
+ */
+ public void removeUserProfileEventListener(UserProfileEventListener listener);
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableGroupHandlerImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableGroupHandlerImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableGroupHandlerImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -21,7 +21,6 @@
import org.exoplatform.services.organization.GroupEventListener;
import org.exoplatform.services.organization.GroupHandler;
import org.exoplatform.services.organization.Membership;
-import org.exoplatform.services.organization.UserHandler;
import java.util.Collection;
import java.util.List;
@@ -77,6 +76,14 @@
/**
* {@inheritDoc}
*/
+ public void removeGroupEventListener(GroupEventListener listener)
+ {
+ groupHandler.removeGroupEventListener(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public void createGroup(Group group, boolean broadcast) throws Exception
{
groupHandler.createGroup(group, broadcast);
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipHandlerImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipHandlerImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipHandlerImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -68,6 +68,14 @@
/**
* {@inheritDoc}
*/
+ public void removeMembershipEventListener(MembershipEventListener listener)
+ {
+ membershipHandler.removeMembershipEventListener(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public void createMembership(Membership m, boolean broadcast) throws Exception
{
membershipHandler.createMembership(m, broadcast);
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -148,4 +148,12 @@
{
membershipTypeHandler.addMembershipTypeEventListener(listener);
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public void removeMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ membershipTypeHandler.removeMembershipTypeEventListener(listener);
+ }
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserHandlerImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserHandlerImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserHandlerImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -73,6 +73,14 @@
/**
* {@inheritDoc}
*/
+ public void removeUserEventListener(UserEventListener listener)
+ {
+ userHandler.removeUserEventListener(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public boolean authenticate(String username, String password) throws Exception
{
boolean authenticated = userHandler.authenticate(username, password);
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserProfileHandlerImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserProfileHandlerImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableUserProfileHandlerImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -17,7 +17,6 @@
package org.exoplatform.services.organization.cache;
import org.exoplatform.services.cache.ExoCache;
-import org.exoplatform.services.organization.UserHandler;
import org.exoplatform.services.organization.UserProfile;
import org.exoplatform.services.organization.UserProfileEventListener;
import org.exoplatform.services.organization.UserProfileHandler;
@@ -65,6 +64,14 @@
/**
* {@inheritDoc}
*/
+ public void removeUserProfileEventListener(UserProfileEventListener listener)
+ {
+ userProfileHandler.removeUserProfileEventListener(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public UserProfile createUserProfileInstance()
{
return userProfileHandler.createUserProfileInstance();
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/impl/mock/DummyOrganizationService.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/impl/mock/DummyOrganizationService.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/impl/mock/DummyOrganizationService.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -85,6 +85,10 @@
{
}
+ public void removeMembershipEventListener(MembershipEventListener listener)
+ {
+ }
+
public void createMembership(Membership m, boolean broadcast) throws Exception
{
}
@@ -304,6 +308,10 @@
{
}
+ public void removeUserEventListener(UserEventListener listener)
+ {
+ }
+
public boolean authenticate(String username, String password, PasswordEncrypter pe) throws Exception
{
Iterator<User> it = users.iterator();
@@ -418,6 +426,10 @@
{
}
+ public void removeGroupEventListener(GroupEventListener listener)
+ {
+ }
+
public Collection getAllGroups()
{
List<Group> groups = new ArrayList<Group>();
@@ -531,6 +543,10 @@
{
}
+ public void removeUserProfileEventListener(UserProfileEventListener listener)
+ {
+ }
+
public UserProfile createUserProfileInstance()
{
return new UserProfileImpl();
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -75,11 +75,22 @@
listeners_ = new ArrayList<GroupEventListener>();
}
+ /**
+ * {@inheritDoc}
+ */
public void addGroupEventListener(GroupEventListener listener)
{
listeners_.add(listener);
}
+ /**
+ * {@inheritDoc}
+ */
+ public void removeGroupEventListener(GroupEventListener listener)
+ {
+ listeners_.remove(listener);
+ }
+
final public Group createGroupInstance()
{
return new GroupImpl();
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -92,6 +92,14 @@
/**
* {@inheritDoc}
*/
+ public void removeMembershipEventListener(MembershipEventListener listener)
+ {
+ listeners_.remove(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
final public Membership createMembershipInstance()
{
return new MembershipImpl();
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -166,6 +166,14 @@
}
/**
+ * {@inheritDoc}
+ */
+ public void removeMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ listeners.remove(listener);
+ }
+
+ /**
* PreSave event.
*/
private void preSave(MembershipType type, boolean isNew) throws Exception
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -69,11 +69,22 @@
return listeners_;
}
+ /**
+ * {@inheritDoc}
+ */
public void addUserEventListener(UserEventListener listener)
{
listeners_.add(listener);
}
+ /**
+ * {@inheritDoc}
+ */
+ public void removeUserEventListener(UserEventListener listener)
+ {
+ listeners_.remove(listener);
+ }
+
public User createUserInstance()
{
return new UserImpl();
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -59,11 +59,22 @@
listeners_ = new ArrayList<UserProfileEventListener>(3);
}
+ /**
+ * {@inheritDoc}
+ */
public void addUserProfileEventListener(UserProfileEventListener listener)
{
listeners_.add(listener);
}
+ /**
+ * {@inheritDoc}
+ */
+ public void removeUserProfileEventListener(UserProfileEventListener listener)
+ {
+ listeners_.remove(listener);
+ }
+
final public UserProfile createUserProfileInstance()
{
return new UserProfileImpl();
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/GroupDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/GroupDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/GroupDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -231,6 +231,11 @@
{
}
+ @SuppressWarnings("unused")
+ public void removeGroupEventListener(GroupEventListener listener)
+ {
+ }
+
private MembershipHandler getMembershipHandler()
{
PortalContainer manager = PortalContainer.getInstance();
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -311,4 +311,12 @@
{
throw new RuntimeException("This method is not supported anymore, please use the new api");
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public void removeMembershipEventListener(MembershipEventListener listener)
+ {
+ throw new RuntimeException("This method is not supported anymore, please use the new api");
+ }
}
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -114,4 +114,12 @@
{
throw new RuntimeException("This method is not supported anymore, please use the new api");
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public void removeMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ throw new RuntimeException("This method is not supported anymore, please use the new api");
+ }
}
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -227,4 +227,9 @@
public void addUserEventListener(UserEventListener listener)
{
}
+
+ @SuppressWarnings("unused")
+ public void removeUserEventListener(UserEventListener listener)
+ {
+ }
}
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -129,7 +129,10 @@
public void addUserProfileEventListener(UserProfileEventListener listener)
{
- // TODO Auto-generated method stub
+ }
+ public void removeUserProfileEventListener(UserProfileEventListener listener)
+ {
}
+
}
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -94,6 +94,14 @@
/**
* {@inheritDoc}
*/
+ public void removeGroupEventListener(GroupEventListener listener)
+ {
+ listeners.remove(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public final Group createGroupInstance()
{
return new GroupImpl();
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -105,6 +105,14 @@
/**
* {@inheritDoc}
*/
+ public void removeMembershipEventListener(MembershipEventListener listener)
+ {
+ listeners.remove(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public final Membership createMembershipInstance()
{
return new MembershipImpl();
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -375,6 +375,14 @@
}
/**
+ * {@inheritDoc}
+ */
+ public void removeMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ listeners.remove(listener);
+ }
+
+ /**
* PreSave event.
*/
private void preSave(MembershipType type, boolean isNew) throws Exception
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -79,6 +79,14 @@
/**
* {@inheritDoc}
*/
+ public void removeUserEventListener(UserEventListener listener)
+ {
+ listeners.remove(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public User createUserInstance()
{
return new UserImpl();
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java 2011-09-06 12:42:34 UTC (rev 4872)
@@ -259,6 +259,14 @@
/**
* {@inheritDoc}
*/
+ public void removeUserProfileEventListener(UserProfileEventListener listener)
+ {
+ listeners.remove(listener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public List<UserProfileEventListener> getUserProfileListeners()
{
return Collections.unmodifiableList(listeners);
12 years, 9 months
exo-jcr SVN: r4871 - in core/trunk: exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache and 3 other directories.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-09-06 08:11:12 -0400 (Tue, 06 Sep 2011)
New Revision: 4871
Added:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListener.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListenerHandler.java
Modified:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/BaseOrganizationService.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java
Log:
EXOJCR-1512: add events for MembershipType
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/BaseOrganizationService.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/BaseOrganizationService.java 2011-09-06 11:02:32 UTC (rev 4870)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/BaseOrganizationService.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -100,6 +100,10 @@
{
groupDAO_.addGroupEventListener((GroupEventListener)listener);
}
+ else if (listener instanceof MembershipTypeEventListener)
+ {
+ membershipTypeDAO_.addMembershipTypeEventListener((MembershipTypeEventListener)listener);
+ }
else if (listener instanceof MembershipEventListener)
{
membershipDAO_.addMembershipEventListener((MembershipEventListener)listener);
Added: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListener.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListener.java (rev 0)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListener.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 2009 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.exoplatform.services.organization;
+
+import org.exoplatform.container.component.BaseComponentPlugin;
+
+/**
+ * @author <a href="abazko(a)exoplatform.com">Anatoliy Bazko</a>
+ * @version $Id$
+ *
+ * <pre>
+ * <configuration>
+ * [..]
+ * <external-component-plugins>
+ * <target-component>org.exoplatform.services.organization.OrganizationService</target-component>
+ * <component-plugin>
+ * <name>my.membership.type.listener</name>
+ * <set-method>addListenerPlugin</set-method>
+ * <type>my.package.MyMembershipTypeEventListener</type>
+ * <description>your listener description</description>
+ * </component-plugin>
+ * </external-component-plugins>
+ * [...]
+ * /configuration>
+ * </pre>
+ */
+public class MembershipTypeEventListener extends BaseComponentPlugin
+{
+ /**
+ * This method is called before the membership type object is saved.
+ *
+ * @param type the membership type to be saved
+ * @param isNew If the membership type is a new record in the database or not.
+ * @throws Exception The developer can decide to throw the exception or not.
+ * If the method throw an exception. The organization service should
+ * not save the membership type.
+ */
+ public void preSave(MembershipType type, boolean isNew) throws Exception
+ {
+ }
+
+ /**
+ * This method is called after the membership type has been saved but not commited
+ * yet
+ *
+ * @param type The mebership type object
+ * @param isNew The membership type is a new record or not.
+ * @throws Exception The developer can decide to throw the exception or not.
+ * If the method throw an exception. The organization service should
+ * role back the data.
+ */
+ public void postSave(MembershipType type, boolean isNew) throws Exception
+ {
+ }
+
+ /**
+ * This method is called before the membership type is removed
+ *
+ * @param type The membership type object to be removed
+ * @throws Exception he developer can decide to throw the exception or not. If
+ * the method throw an exception. The organization service should
+ * not remove the membership type record from the database.
+ */
+ public void preDelete(MembershipType type) throws Exception
+ {
+ }
+
+ /**
+ * This method should be called after the membership type has been removed from the
+ * database but not commited yet.
+ *
+ * @param type The membership type which has been removed from the database.
+ * @throws Exception The developer can decide to throw the exception or not.
+ * If the method throw the exception, the organization service
+ * should role back the database.
+ */
+ public void postDelete(MembershipType type) throws Exception
+ {
+ }
+}
Property changes on: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListener.java
___________________________________________________________________
Added: svn:keywords
+ Id
Added: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListenerHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListenerHandler.java (rev 0)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListenerHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.exoplatform.services.organization;
+
+import java.util.List;
+
+/**
+ * @author <a href="abazko(a)exoplatform.com">Anatoliy Bazko</a>
+ * @version $Id$
+ */
+public interface MembershipTypeEventListenerHandler
+{
+
+ /**
+ * Return list of MembershipTypeEventListener. List should be unmodifiable to prevent modification outside of MembershipTypeHandler.
+ *
+ * @return list of MembershipTypeEventListener
+ */
+ public List<MembershipTypeEventListener> getMembershipTypeListeners();
+
+}
Property changes on: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListenerHandler.java
___________________________________________________________________
Added: svn:keywords
+ Id
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java 2011-09-06 11:02:32 UTC (rev 4870)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -115,4 +115,11 @@
* Ususally an exception is throwed when the method cannot access the database.
*/
public Collection findMembershipTypes() throws Exception;
+
+ /**
+ * Use this method to register a membership type event listener.
+ *
+ * @param listener the listener instance.
+ */
+ public void addMembershipTypeEventListener(MembershipTypeEventListener listener);
}
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java 2011-09-06 11:02:32 UTC (rev 4870)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/cache/CacheableMembershipTypeHandlerImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -17,11 +17,10 @@
package org.exoplatform.services.organization.cache;
import org.exoplatform.services.cache.ExoCache;
-import org.exoplatform.services.organization.Group;
import org.exoplatform.services.organization.Membership;
import org.exoplatform.services.organization.MembershipType;
+import org.exoplatform.services.organization.MembershipTypeEventListener;
import org.exoplatform.services.organization.MembershipTypeHandler;
-import org.exoplatform.services.organization.UserHandler;
import java.util.Collection;
import java.util.List;
@@ -142,4 +141,11 @@
return membershipType;
}
+ /**
+ * {@inheritDoc}
+ */
+ public void addMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ membershipTypeHandler.addMembershipTypeEventListener(listener);
+ }
}
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java 2011-09-06 11:02:32 UTC (rev 4870)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipTypeDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -20,11 +20,15 @@
import org.exoplatform.services.database.HibernateService;
import org.exoplatform.services.organization.MembershipType;
+import org.exoplatform.services.organization.MembershipTypeEventListener;
+import org.exoplatform.services.organization.MembershipTypeEventListenerHandler;
import org.exoplatform.services.organization.MembershipTypeHandler;
import org.exoplatform.services.organization.impl.MembershipTypeImpl;
import org.hibernate.Session;
+import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.Date;
import java.util.List;
@@ -33,7 +37,7 @@
* benjmestrallet(a)users.sourceforge.net Author : Tuan Nguyen
* tuan08(a)users.sourceforge.net Date: Aug 22, 2003 Time: 4:51:21 PM
*/
-public class MembershipTypeDAOImpl implements MembershipTypeHandler
+public class MembershipTypeDAOImpl implements MembershipTypeHandler, MembershipTypeEventListenerHandler
{
private static final String queryFindMembershipType =
"from m in class org.exoplatform.services.organization.impl.MembershipTypeImpl " + "where m.name = ? ";
@@ -41,6 +45,11 @@
private static final String queryFindAllMembershipType =
"from m in class org.exoplatform.services.organization.impl.MembershipTypeImpl";
+ /**
+ * The list of listeners to broadcast the events.
+ */
+ protected final List<MembershipTypeEventListener> listeners = new ArrayList<MembershipTypeEventListener>();
+
private HibernateService service_;
public MembershipTypeDAOImpl(HibernateService service)
@@ -59,8 +68,20 @@
Date now = new Date();
mt.setCreatedDate(now);
mt.setModifiedDate(now);
+
+ if (broadcast)
+ {
+ preSave(mt, true);
+ }
+
session.save(mt);
session.flush();
+
+ if (broadcast)
+ {
+ postSave(mt, true);
+ }
+
return mt;
}
@@ -69,8 +90,20 @@
Session session = service_.openSession();
Date now = new Date();
mt.setModifiedDate(now);
+
+ if (broadcast)
+ {
+ preSave(mt, false);
+ }
+
session.update(mt);
session.flush();
+
+ if (broadcast)
+ {
+ postSave(mt, false);
+ }
+
return mt;
}
@@ -85,6 +118,7 @@
{
Session session = service_.openSession();
MembershipTypeImpl m = (MembershipTypeImpl)session.get(MembershipTypeImpl.class, name);
+
try
{
List entries =
@@ -98,11 +132,22 @@
{
}
+ if (broadcast)
+ {
+ preDelete(m);
+ }
+
if (m != null)
{
session.delete(m);
session.flush();
}
+
+ if (broadcast)
+ {
+ postDelete(m);
+ }
+
return m;
}
@@ -111,4 +156,64 @@
Session session = service_.openSession();
return session.createQuery(queryFindAllMembershipType).list();
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ listeners.add(listener);
+ }
+
+ /**
+ * PreSave event.
+ */
+ private void preSave(MembershipType type, boolean isNew) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.preSave(type, isNew);
+ }
+ }
+
+ /**
+ * PostSave event.
+ */
+ private void postSave(MembershipType type, boolean isNew) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.postSave(type, isNew);
+ }
+ }
+
+ /**
+ * PreDelete event.
+ */
+ private void preDelete(MembershipType type) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.preDelete(type);
+ }
+ }
+
+ /**
+ * PostDelete event.
+ */
+ private void postDelete(MembershipType type) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.postDelete(type);
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<MembershipTypeEventListener> getMembershipTypeListeners()
+ {
+ return Collections.unmodifiableList(listeners);
+ }
}
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java 2011-09-06 11:02:32 UTC (rev 4870)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/MembershipTypeDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -25,6 +25,7 @@
import org.exoplatform.services.database.StandardSQLDAO;
import org.exoplatform.services.listener.ListenerService;
import org.exoplatform.services.organization.MembershipType;
+import org.exoplatform.services.organization.MembershipTypeEventListener;
import org.exoplatform.services.organization.MembershipTypeHandler;
import java.util.Calendar;
@@ -106,4 +107,11 @@
return mt;
}
+ /**
+ * {@inheritDoc}
+ */
+ public void addMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ throw new RuntimeException("This method is not supported anymore, please use the new api");
+ }
}
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java 2011-09-06 11:02:32 UTC (rev 4870)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipTypeDAOImpl.java 2011-09-06 12:11:12 UTC (rev 4871)
@@ -22,13 +22,17 @@
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
import org.exoplatform.services.organization.MembershipType;
+import org.exoplatform.services.organization.MembershipTypeEventListener;
+import org.exoplatform.services.organization.MembershipTypeEventListenerHandler;
import org.exoplatform.services.organization.MembershipTypeHandler;
import org.exoplatform.services.organization.impl.MembershipTypeImpl;
import org.exoplatform.services.organization.ldap.CacheHandler.CacheType;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.Date;
+import java.util.List;
import javax.naming.NameNotFoundException;
import javax.naming.NamingEnumeration;
@@ -45,7 +49,7 @@
* Created by The eXo Platform SAS Author : Tuan Nguyen
* tuan08(a)users.sourceforge.net Oct 14, 2005. @version andrew00x $
*/
-public class MembershipTypeDAOImpl extends BaseDAO implements MembershipTypeHandler
+public class MembershipTypeDAOImpl extends BaseDAO implements MembershipTypeHandler, MembershipTypeEventListenerHandler
{
/**
@@ -54,6 +58,11 @@
private static final Log LOG = ExoLogger.getLogger("exo.core.component.organization.ldap.MembershipTypeDAOImpl");
/**
+ * The list of listeners to broadcast the events.
+ */
+ protected final List<MembershipTypeEventListener> listeners = new ArrayList<MembershipTypeEventListener>();
+
+ /**
* @param ldapAttrMapping mapping LDAP attributes to eXo organization service
* items (users, groups, etc)
* @param ldapService {@link LDAPService}
@@ -98,8 +107,19 @@
Date now = new Date();
mt.setCreatedDate(now);
mt.setModifiedDate(now);
+
+ if (broadcast)
+ {
+ preSave(mt, true);
+ }
+
ctx.createSubcontext(membershipTypeDN, ldapAttrMapping.membershipTypeToAttributes(mt));
+ if (broadcast)
+ {
+ postSave(mt, true);
+ }
+
cacheHandler.put(mt.getName(), mt, CacheType.MEMBERSHIPTYPE);
}
return mt;
@@ -148,8 +168,19 @@
new ModificationItem(DirContext.REMOVE_ATTRIBUTE, new BasicAttribute(
ldapAttrMapping.ldapDescriptionAttr, mt.getDescription()));
}
+
+ if (broadcast)
+ {
+ preSave(mt, false);
+ }
+
ctx.modifyAttributes(membershipTypeDN, mods);
+ if (broadcast)
+ {
+ postSave(mt, false);
+ }
+
cacheHandler.put(mt.getName(), mt, CacheType.MEMBERSHIPTYPE);
return mt;
}
@@ -182,8 +213,19 @@
Attributes attrs = ctx.getAttributes(membershipTypeDN);
MembershipType m = ldapAttrMapping.attributesToMembershipType(attrs);
removeMembership(ctx, name);
+
+ if (broadcast)
+ {
+ preDelete(m);
+ }
+
ctx.destroySubcontext(membershipTypeDN);
+ if (broadcast)
+ {
+ postDelete(m);
+ }
+
cacheHandler.remove(name, CacheType.MEMBERSHIPTYPE);
return m;
}
@@ -324,4 +366,63 @@
}
}
+ /**
+ * {@inheritDoc}
+ */
+ public void addMembershipTypeEventListener(MembershipTypeEventListener listener)
+ {
+ listeners.add(listener);
+ }
+
+ /**
+ * PreSave event.
+ */
+ private void preSave(MembershipType type, boolean isNew) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.preSave(type, isNew);
+ }
+ }
+
+ /**
+ * PostSave event.
+ */
+ private void postSave(MembershipType type, boolean isNew) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.postSave(type, isNew);
+ }
+ }
+
+ /**
+ * PreDelete event.
+ */
+ private void preDelete(MembershipType type) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.preDelete(type);
+ }
+ }
+
+ /**
+ * PostDelete event.
+ */
+ private void postDelete(MembershipType type) throws Exception
+ {
+ for (MembershipTypeEventListener listener : listeners)
+ {
+ listener.postDelete(type);
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<MembershipTypeEventListener> getMembershipTypeListeners()
+ {
+ return Collections.unmodifiableList(listeners);
+ }
}
12 years, 9 months