exo-jcr SVN: r5343 - in kernel/trunk: exo.kernel.component.ext.rpc.impl.jgroups.v3/src/main/java/org/exoplatform/services/rpc/jgv3 and 1 other directory.
by do-not-reply@jboss.org
Author: andrew.plotnikov
Date: 2011-12-23 02:26:01 -0500 (Fri, 23 Dec 2011)
New Revision: 5343
Modified:
kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java
kernel/trunk/exo.kernel.component.ext.rpc.impl.jgroups.v3/src/main/java/org/exoplatform/services/rpc/jgv3/RPCServiceImpl.java
Log:
EXOJCR-1687: Fixed new sonar violations in project
Modified: kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java
===================================================================
--- kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java 2011-12-22 14:22:44 UTC (rev 5342)
+++ kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java 2011-12-23 07:26:01 UTC (rev 5343)
@@ -168,8 +168,8 @@
safeConfig.setName(region);
ExoCache simple = null;
- if (factory_ != DEFAULT_FACTORY && safeConfig.getClass().isAssignableFrom(ExoCacheConfig.class)
- && safeConfig.getImplementation() != null) //NOSONAR
+ if (factory_ != DEFAULT_FACTORY && safeConfig.getClass().isAssignableFrom(ExoCacheConfig.class) //NOSONAR
+ && safeConfig.getImplementation() != null)
{
// The implementation exists and the config is not a sub class of ExoCacheConfig
// we assume that we expect to use the default cache factory
Modified: kernel/trunk/exo.kernel.component.ext.rpc.impl.jgroups.v3/src/main/java/org/exoplatform/services/rpc/jgv3/RPCServiceImpl.java
===================================================================
--- kernel/trunk/exo.kernel.component.ext.rpc.impl.jgroups.v3/src/main/java/org/exoplatform/services/rpc/jgv3/RPCServiceImpl.java 2011-12-22 14:22:44 UTC (rev 5342)
+++ kernel/trunk/exo.kernel.component.ext.rpc.impl.jgroups.v3/src/main/java/org/exoplatform/services/rpc/jgv3/RPCServiceImpl.java 2011-12-23 07:26:01 UTC (rev 5343)
@@ -63,7 +63,8 @@
*/
protected RspList<Object> castMessage(List<Address> dests, Message msg, boolean synchronous, long timeout) throws Exception
{
- return dispatcher.castMessage(dests, msg, new RequestOptions(synchronous ? ResponseMode.GET_ALL : ResponseMode.GET_NONE, timeout));
+ return dispatcher.castMessage(dests, msg, new RequestOptions(synchronous ? ResponseMode.GET_ALL
+ : ResponseMode.GET_NONE, timeout));
}
/**
12 years, 5 months
exo-jcr SVN: r5342 - in core/trunk: exo.core.component.database/src/main/java/org/exoplatform/services/database/impl and 14 other directories.
by do-not-reply@jboss.org
Author: andrew.plotnikov
Date: 2011-12-22 09:22:44 -0500 (Thu, 22 Dec 2011)
New Revision: 5342
Modified:
core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DAO.java
core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DatabaseService.java
core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ExoDatasource.java
core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ReflectionMapper.java
core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/ExoCacheProvider.java
core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/TextClobType.java
core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/DocumentReader.java
core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/HTMLDocumentReader.java
core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/tika/TikaDocumentReader.java
core/trunk/exo.core.component.ldap/src/main/java/org/exoplatform/services/ldap/ObjectClassAttribute.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/Group.java
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/MembershipType.java
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/MembershipTypeHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/OrganizationConfig.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/User.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/UserProfile.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/auth/OrganizationAuthenticatorImpl.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/jdbc/UserProfileData.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipListener.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipTypeListener.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/UserListener.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/LDAPAttributeMapping.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/DigestPasswordEncrypter.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/Identity.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/j2ee/DigestAuthenticationJettyLoginModule.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/AbstractLoginModule.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/DefaultLoginModule.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/IdentitySetLoginModule.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/SharedStateLoginModule.java
core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/web/SetCurrentIdentityFilter.java
Log:
EXOJCR-1687: Fixed new sonar violations in project
Modified: core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DAO.java
===================================================================
--- core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DAO.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DAO.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -44,7 +44,6 @@
protected DBObjectMapper<T> mapper_;
- // TODO need remove
static int totalQueryTime = 0;
static int totalBathTime = 0;
Modified: core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DatabaseService.java
===================================================================
--- core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DatabaseService.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/DatabaseService.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -48,13 +48,10 @@
*/
public ExoDatasource getDatasource(String dsname) throws Exception;
- // TODO: This method should be removed and used the getDataSource method
public Connection getConnection() throws Exception;
- // TODO: This method should be removed and used the getDataSource method
public Connection getConnection(String dsName) throws Exception;
- // TODO: This method should be removed and used the getDataSource method
public void closeConnection(Connection conn) throws Exception;
/**
Modified: core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ExoDatasource.java
===================================================================
--- core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ExoDatasource.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ExoDatasource.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -59,7 +59,6 @@
final public static int SQL_SERVER_TYPE = 6;
- // TODO need remove
static int totalGetConnect = 0;
// static int totalCommit = 0;
Modified: core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ReflectionMapper.java
===================================================================
--- core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ReflectionMapper.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/ReflectionMapper.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -136,7 +136,6 @@
return getField(clazz.getSuperclass(), name);
}
- // TODO will review
private Object getValue(int type, ResultSet resultSet, String name) throws Exception
{
switch (type)
Modified: core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/ExoCacheProvider.java
===================================================================
--- core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/ExoCacheProvider.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/ExoCacheProvider.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -56,8 +56,8 @@
try
{
ExoCache<Serializable, Object> cache = cacheService.getCacheInstance(name);
- cache.setMaxSize(5000); // TODO Do we really need override configuration
- // in this way ?
+ cache.setMaxSize(5000);
+
return new ExoCachePlugin(cache);
}
catch (Exception ex)
Modified: core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/TextClobType.java
===================================================================
--- core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/TextClobType.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/TextClobType.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -72,144 +72,6 @@
return (x == y) || (x != null && x.equals(y));
}
- // TODO cleanup, fix of COR-129. [06.03.2009]
- // private void nullSafeSetOld(PreparedStatement stmt, Object value, int index) throws HibernateException,
- // SQLException {
- //
- // // if this is a PreparedStatement wrapper, get the underlying
- // // PreparedStatement
- // PreparedStatement realStatement = getRealStatement(stmt);
- //
- // DatabaseMetaData dbMetaData = realStatement.getConnection().getMetaData();
- //
- // if (value == null) {
- // stmt.setNull(index, sqlTypes()[0]);
- // } else if (ORACLE_DRIVER_NAME.equals(dbMetaData.getDriverName())) {
- // if ((dbMetaData.getDriverMajorVersion() >= ORACLE_DRIVER_MAJOR_VERSION)
- // && (dbMetaData.getDriverMinorVersion() >= ORACLE_DRIVER_MINOR_VERSION)) {
- // try {
- // // Code compliments of Scott Miller
- // // support oracle clobs without requiring oracle libraries
- // // at compile time
- // // Note this assumes that if you are using the Oracle
- // // Driver.
- // // then you have access to the oracle.sql.CLOB class
- //
- // // First get the oracle clob class
- // Class oracleClobClass = Class.forName("oracle.sql.CLOB");
- //
- // // Get the oracle connection class for checking
- // Class oracleConnectionClass = Class.forName("oracle.jdbc.OracleConnection");
- //
- // // now get the static factory method
- // Class partypes[] = new Class[3];
- // partypes[0] = Connection.class;
- // partypes[1] = Boolean.TYPE;
- // partypes[2] = Integer.TYPE;
- // Method createTemporaryMethod = oracleClobClass.getDeclaredMethod("createTemporary",
- // partypes);
- // // now get ready to call the factory method
- // Field durationSessionField = oracleClobClass.getField("DURATION_SESSION");
- // Object arglist[] = new Object[3];
- // Connection conn = realStatement.getConnection();
- //
- // // Make sure connection object is right type
- // if (!oracleConnectionClass.isAssignableFrom(conn.getClass())) {
- // throw new HibernateException("JDBC connection object must be a oracle.jdbc.OracleConnection. "
- // + "Connection class is " + conn.getClass().getName());
- // }
- //
- // arglist[0] = conn;
- // arglist[1] = Boolean.TRUE;
- // arglist[2] = durationSessionField.get(null); // null is
- // // valid
- // // because of
- // // static field
- //
- // // Create our CLOB
- // Object tempClob = createTemporaryMethod.invoke(null, arglist); // null
- // // is
- // // valid
- // // because
- // // of
- // // static
- // // method
- //
- // // get the open method
- // partypes = new Class[1];
- // partypes[0] = Integer.TYPE;
- // Method openMethod = oracleClobClass.getDeclaredMethod("open", partypes);
- //
- // // prepare to call the method
- // Field modeReadWriteField = oracleClobClass.getField("MODE_READWRITE");
- // arglist = new Object[1];
- // arglist[0] = modeReadWriteField.get(null); // null is valid
- // // because of
- // // static field
- //
- // // call open(CLOB.MODE_READWRITE);
- // openMethod.invoke(tempClob, arglist);
- //
- // // get the getCharacterOutputStream method
- // // Method getCharacterOutputStreamMethod =
- // // oracleClobClass.getDeclaredMethod(
- // // "getCharacterOutputStream", null );
- //
- // // use getAsciiOutputStream for special characters,
- // // using the Writer obtained from 'getCharacterOutputStream"
- // // causes
- // // 'No more data to read from socket' when inserting special
- // // characters
- // Method getAsciiOutputStreamMethod = oracleClobClass.getDeclaredMethod("getAsciiOutputStream",
- // null);
- //
- // // call the getCharacterOutpitStream method
- // OutputStream tempClobOutputStream = (OutputStream) getAsciiOutputStreamMethod.invoke(tempClob,
- // null);
- //
- // // write the string to the clob
- // tempClobOutputStream.write(((String) value).getBytes());
- // tempClobOutputStream.flush();
- // tempClobOutputStream.close();
- //
- // // get the close method
- // Method closeMethod = oracleClobClass.getDeclaredMethod("close", null);
- //
- // // call the close method
- // closeMethod.invoke(tempClob, null);
- //
- // // add the clob to the statement
- // realStatement.setClob(index, (Clob) tempClob);
- // } catch (ClassNotFoundException e) {
- // // could not find the class with reflection
- // throw new HibernateException("Unable to find a required class.\n" + e.getMessage());
- // } catch (NoSuchMethodException e) {
- // // could not find the metho with reflection
- // throw new HibernateException("Unable to find a required method.\n" + e.getMessage());
- // } catch (NoSuchFieldException e) {
- // // could not find the field with reflection
- // throw new HibernateException("Unable to find a required field.\n" + e.getMessage());
- // } catch (IllegalAccessException e) {
- // throw new HibernateException("Unable to access a required method or field.\n"
- // + e.getMessage());
- // } catch (InvocationTargetException e) {
- // throw new HibernateException(e.getMessage());
- // } catch (IOException e) {
- // throw new HibernateException(e.getMessage());
- // }
- // } else {
- // throw new HibernateException("No CLOBS support. Use driver version "
- // + ORACLE_DRIVER_MAJOR_VERSION + ", minor " + ORACLE_DRIVER_MINOR_VERSION);
- // }
- // } else {
- // // this is the default way to handle Clobs that seems to work with
- // // most Databases
- // String str = (String) value;
- // StringReader r = new StringReader(str);
- // stmt.setCharacterStream(index, r, str.length());
- // }
- // }
-
/**
* {@inheritDoc}
*/
Modified: core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/DocumentReader.java
===================================================================
--- core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/DocumentReader.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/DocumentReader.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -39,8 +39,8 @@
/**
* @param is
* @return document content
- * @throws IOException TODO
- * @throws DocumentReadException TODO
+ * @throws IOException
+ * @throws DocumentReadException
*/
String getContentAsText(InputStream is) throws IOException, DocumentReadException;
@@ -48,8 +48,8 @@
* @param is data input stream
* @param encoding char set for input stream
* @return document content
- * @throws IOException TODO
- * @throws DocumentReadException TODO
+ * @throws IOException
+ * @throws DocumentReadException
*/
String getContentAsText(InputStream is, String encoding) throws IOException, DocumentReadException;
@@ -57,9 +57,8 @@
* @param mimeType
* @return metainfo properties reduced to some supported metadata set (Dublin
* Core or other)
- * @throws IOException TODO
- * @throws DocumentReadException TODO
+ * @throws IOException
+ * @throws DocumentReadException
*/
Properties getProperties(InputStream is) throws IOException, DocumentReadException;
-
-}
+}
\ No newline at end of file
Modified: core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/HTMLDocumentReader.java
===================================================================
--- core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/HTMLDocumentReader.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/HTMLDocumentReader.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -95,7 +95,7 @@
StringBean sb = new StringBean();
// read links or not
- // sb.setLinks(true); //TODO make this configurable
+ // sb.setLinks(true);
// extract text
parser.visitAllNodesWith(sb);
Modified: core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/tika/TikaDocumentReader.java
===================================================================
--- core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/tika/TikaDocumentReader.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.document/src/main/java/org/exoplatform/services/document/impl/tika/TikaDocumentReader.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -318,7 +318,7 @@
convertProperty(metadata, props, DCMetaData.COVERAGE, DublinCore.COVERAGE);
convertProperty(metadata, props, DCMetaData.CREATOR,
new String[]{MSOffice.AUTHOR, DublinCore.CREATOR});
- //TODO different parsers return date in different formats, so keep it as String
+ // different parsers return date in different formats, so keep it as String
convertProperty(metadata, props, DCMetaData.DATE, new String[]{DublinCore.DATE, MSOffice.LAST_SAVED,
MSOffice.CREATION_DATE});
convertProperty(metadata, props, DCMetaData.DESCRIPTION, new String[]{DublinCore.DESCRIPTION,
Modified: core/trunk/exo.core.component.ldap/src/main/java/org/exoplatform/services/ldap/ObjectClassAttribute.java
===================================================================
--- core/trunk/exo.core.component.ldap/src/main/java/org/exoplatform/services/ldap/ObjectClassAttribute.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.ldap/src/main/java/org/exoplatform/services/ldap/ObjectClassAttribute.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -35,4 +35,4 @@
for (String clazz : classes)
add(clazz);
}
-}
+}
\ No newline at end of file
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/Group.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/Group.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/Group.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -45,9 +45,7 @@
public String getGroupName();
/**
- * @param name the local name for the group TODO This method should be called
- * once only and should be set in the
- * GroupHandler.createGroupInstance() method
+ * @param name the local name for the group
*/
public void setGroupName(String name);
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-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupHandler.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -103,12 +103,7 @@
* @return Return the removed group.
* @throws Exception An exception is throwed if the method fail to remove the
* group from the database, the group is not existed in the
- * database, or any listener fail to handle the event. TODO
- * Currently the implementation simply remove the children group
- * without broadcasting the event. We should add the parameter
- * 'recursive' to the parameter list so the third party can have
- * more control. Also should we broadcast the membership remove
- * event
+ * database, or any listener fail to handle the event.
*/
public Group removeGroup(Group group, boolean broadcast) throws Exception;
@@ -122,9 +117,7 @@
* the membershipType is null, it should mean any membership type.
* @return A collection of the found groups
* @throws Exception An exception is throwed if the method cannot access the
- * database. TODO currently the implementation should not handle the
- * case of membershipType is null. Also we should merge this method
- * with the findGroupsOfUser method.
+ * database.
*/
public Collection findGroupByMembership(String userName, String membershipType) throws Exception;
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipType.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipType.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipType.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -38,9 +38,7 @@
public String getName();
/**
- * @param s The name of the membership type TODO This method should not be
- * available to the developer as it should call only once, When a new
- * membership type record is created
+ * @param s The name of the membership type
*/
public void setName(String s);
@@ -70,9 +68,7 @@
public Date getCreatedDate();
/**
- * @param d the created date TODO This method should be managed by the
- * organization service and the developer should not called this
- * method.
+ * @param d the created date
*/
public void setCreatedDate(Date d);
@@ -82,8 +78,7 @@
public Date getModifiedDate();
/**
- * @param d the modified date TODO this field should be managed by the
- * organization service and developer should not called this method.
+ * @param d the modified date
*/
public void setModifiedDate(Date d);
}
Modified: 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 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeEventListenerHandler.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -28,10 +28,10 @@
{
/**
- * Return list of MembershipTypeEventListener. List should be unmodifiable to prevent modification outside of MembershipTypeHandler.
+ * Return list of MembershipTypeEventListener. List should be unmodifiable
+ * to prevent modification outside of MembershipTypeHandler.
*
* @return list of MembershipTypeEventListener
*/
public List<MembershipTypeEventListener> getMembershipTypeListeners();
-
-}
+}
\ No newline at end of file
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-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipTypeHandler.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -31,9 +31,6 @@
* type and delete the membership type event. Each event should have 2 phases: pre event and post
* event. The method createMembershipType(..) , saveMembershipType(..) and removeMembershipType
* broadcast the event at each phase so the listeners can handle the event properly
- *
- * TODO Currently the membership type handler do not support the listener and broadcasting. We
- * should implement this and broadcast the event properly.
*/
public interface MembershipTypeHandler
{
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/OrganizationConfig.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/OrganizationConfig.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/OrganizationConfig.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -106,7 +106,6 @@
private String parentId;
- // TODO: Tung.Pham added
private String label;
// --------------------------------------
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/User.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/User.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/User.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -45,10 +45,7 @@
* This method is used to change the username
*
* @param s
- * @deprecated The third party developer should not used this method TODO: I
- * think we should not have this method. the username should be
- * set only for the first time. So we can pass the username to the @see
- * UserHandler createUserInstance() method.
+ * @deprecated The third party developer should not used this method
*/
public void setUserName(String s);
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-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserHandler.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -101,9 +101,7 @@
* broadcasted to all registered listener
* @return return the User object after that user has beed removed from
* database
- * @throws Exception
- * @TODO Should we broadcast the membership remove event when a user is
- * removed ??
+ * @throws Exception
*/
public User removeUser(String userName, boolean broadcast) throws Exception;
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfile.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfile.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfile.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -32,10 +32,6 @@
*/
public interface UserProfile
{
- /**
- * TODO Those keys should be moved to the UserProfile portlet. The
- * organization service should be generic.
- */
/**
* The predefine attributes of the user personal info. Those attributes are
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-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileHandler.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -66,9 +66,7 @@
* @param broadcast Broadcast the event the listeners if broadcast is true.
* @return The UserProfile instance that has been removed.
* @throws Exception Throw exception if the method fail to remove the record
- * or any listener fail to handle the event TODO Should we provide
- * this method or the user profile should be removed only when the
- * user is removed
+ * or any listener fail to handle the event
*/
public UserProfile removeUserProfile(String userName, boolean broadcast) throws Exception;
Modified: core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/auth/OrganizationAuthenticatorImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/auth/OrganizationAuthenticatorImpl.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/auth/OrganizationAuthenticatorImpl.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -45,7 +45,7 @@
/**
* Created by The eXo Platform SAS . An authentication wrapper over Organization
- * service TODO move it to Organization Service / Auth
+ * service
*
* @author Gennady Azarenkov
* @version $Id:$
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-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/impl/mock/DummyOrganizationService.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -179,7 +179,6 @@
usr.setPassword("admin");
users.add(usr);
- // TODO for what?
usr = new UserImpl("weblogic");
usr.setPassword("11111111");
users.add(usr);
@@ -404,7 +403,6 @@
}
else
{
- // TODO is it right?
return new DummyGroup("", "/" + groupId, groupId);
}
}
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileData.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileData.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/UserProfileData.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -35,7 +35,7 @@
@TableField(name = "PROFILE", type = "string", length = 2000)})
public class UserProfileData extends DBObject
{
- // TODO: use jibx
+
static transient private XStream xstream_;
private String userName;
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipListener.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipListener.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipListener.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -31,8 +31,6 @@
@Override
public void onEvent(Event arg0) throws Exception
{
- // TODO Auto-generated method stub
}
-
-}
+}
\ No newline at end of file
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipTypeListener.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipTypeListener.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/MembershipTypeListener.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -31,8 +31,6 @@
@Override
public void onEvent(Event arg0) throws Exception
{
- // TODO Auto-generated method stub
}
-
-}
+}
\ No newline at end of file
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/UserListener.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/UserListener.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/jdbc/listeners/UserListener.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -31,8 +31,6 @@
@Override
public void onEvent(Event arg0) throws Exception
{
- // TODO Auto-generated method stub
}
-
-}
+}
\ No newline at end of file
Modified: core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/LDAPAttributeMapping.java
===================================================================
--- core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/LDAPAttributeMapping.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/LDAPAttributeMapping.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -65,11 +65,9 @@
public String baseURL, groupsURL, membershipTypeURL, userURL, profileURL;
- // TODO remove initialization in major release. It may be not initialized from
// for AD.
String userDNKey = "cn";
- //TODO remove initialization in major release. Should be initialized from
// configuration.
String groupDNKey = "ou";
@@ -103,7 +101,6 @@
String ldapCreatedTimeStampAttr, ldapModifiedTimeStampAttr, ldapDescriptionAttr;
- // TODO remove initialization in major release. Should be initialized from
// configuration.
String groupNameAttr = "ou";
@@ -261,9 +258,7 @@
if (PROFILE_LDAP_CLASSES == null)
PROFILE_LDAP_CLASSES = profileLDAPClasses.split(",");
attrs.put(new ObjectClassAttribute(PROFILE_LDAP_CLASSES));
- // TODO http://jira.exoplatform.org/browse/COR-49
- // Comment: at the time profiles are stored in bd.
- // 27.03.2009
+
attrs.put("sn", profile.getUserName());
UserProfileData upd = new UserProfileData();
upd.setUserProfile(profile);
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-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -197,7 +197,7 @@
{
ldapService.release(ctx);
}
- // TODO really need this ?
+
if (existingUser != null && (!user.getPassword().equals(existingUser.getPassword())))
{
saveUserPassword(user, userDN);
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/DigestPasswordEncrypter.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/DigestPasswordEncrypter.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/DigestPasswordEncrypter.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -99,7 +99,7 @@
}
catch (NoSuchAlgorithmException e)
{
- //TODO add exologger
+
}
// calculate MD5 hash of A1 string
String a1 = username + ":" + realm + ":" + new String(plainPassword);
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/Identity.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/Identity.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/Identity.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -139,7 +139,6 @@
*/
public Set<String> getGroups()
{
- // TODO : Need to protect group's set ??
Set<String> groups = new HashSet<String>();
for (MembershipEntry m : memberships)
{
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/j2ee/DigestAuthenticationJettyLoginModule.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/j2ee/DigestAuthenticationJettyLoginModule.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/j2ee/DigestAuthenticationJettyLoginModule.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -95,7 +95,7 @@
identity = authenticator.createIdentity(userId);
sharedState.put("javax.security.auth.login.name", userId);
- // TODO use PasswordCredential wrapper
+
subject.getPrivateCredentials().add(getPassword());
subject.getPublicCredentials().add(getUsername());
}
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/AbstractLoginModule.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/AbstractLoginModule.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/AbstractLoginModule.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -108,7 +108,6 @@
*/
protected ExoContainer getContainer() throws Exception
{
- // TODO set correct current container
ExoContainer container = ExoContainerContext.getCurrentContainer();
if (container instanceof RootContainer)
{
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/DefaultLoginModule.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/DefaultLoginModule.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/DefaultLoginModule.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -117,7 +117,7 @@
String userId = authenticator.validateUser(credentials);
identity = authenticator.createIdentity(userId);
sharedState.put("javax.security.auth.login.name", userId);
- // TODO use PasswordCredential wrapper
+
subject.getPrivateCredentials().add(password);
subject.getPublicCredentials().add(new UsernameCredential(username));
}
@@ -149,7 +149,6 @@
if (singleLogin && identityRegistry.getIdentity(identity.getUserId()) != null)
throw new LoginException("User " + identity.getUserId() + " already logined.");
- // TODO Remove subject from identity if nod need it in eXo environment.
// Do not need implement logout by self if use tomcat 6.0.21 and later.
// See deprecation comments in
// org.exoplatform.services.security.web.JAASConversationStateListener
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/IdentitySetLoginModule.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/IdentitySetLoginModule.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/IdentitySetLoginModule.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -92,14 +92,12 @@
throw new LoginException("User " + userId + " already logined.");
Identity identity = authenticator.createIdentity(userId);
- // TODO Remove subject from identity if nod need it in eXo environment.
// Do not need implement logout by self if use tomcat 6.0.21 and later.
// See deprecation comments in
// org.exoplatform.services.security.web.JAASConversationStateListener
identity.setSubject(subject);
identityRegistry.register(identity);
-
}
catch (Exception e)
{
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/SharedStateLoginModule.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/SharedStateLoginModule.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/jaas/SharedStateLoginModule.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -70,7 +70,7 @@
sharedState.put("exo.security.identity", identity);
sharedState.put("javax.security.auth.login.name", userId);
- // TODO use PasswordCredential wrapper
+
subject.getPrivateCredentials().add(password);
subject.getPublicCredentials().add(new UsernameCredential(username));
return true;
Modified: core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/web/SetCurrentIdentityFilter.java
===================================================================
--- core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/web/SetCurrentIdentityFilter.java 2011-12-22 13:08:06 UTC (rev 5341)
+++ core/trunk/exo.core.component.security.core/src/main/java/org/exoplatform/services/security/web/SetCurrentIdentityFilter.java 2011-12-22 14:22:44 UTC (rev 5342)
@@ -147,7 +147,6 @@
{
state = new ConversationState(identity);
// Keep subject as attribute in ConversationState.
- // TODO remove this, do not need it any more.
state.setAttribute(ConversationState.SUBJECT, identity.getSubject());
}
else
12 years, 5 months
exo-jcr SVN: r5341 - in kernel/trunk: exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/io and 8 other directories.
by do-not-reply@jboss.org
Author: andrew.plotnikov
Date: 2011-12-22 08:08:06 -0500 (Thu, 22 Dec 2011)
New Revision: 5341
Modified:
kernel/trunk/exo.kernel.commons.test/src/main/java/org/exoplatform/commons/test/TestSecurityManager.java
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoExpression.java
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoProperties.java
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ISO8601.java
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/MimeTypeResolver.java
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/PropertiesLoader.java
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/io/ZipUtil.java
kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/concurrent/SynchronizedQueue.java
kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java
kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/compress/CompressData.java
kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/rpc/impl/AbstractRPCService.java
kernel/trunk/exo.kernel.component.ext.cache.impl.jboss.v3/src/main/java/org/exoplatform/services/cache/impl/jboss/ExoCacheFactoryImpl.java
kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/configuration/Namespaces.java
kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/xml/ObjectParam.java
Log:
EXOJCR-1687: Fixed new sonar violations in project
Modified: kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoExpression.java
===================================================================
--- kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoExpression.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoExpression.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -244,26 +244,42 @@
return new ByteArrayInputStream(baos.toByteArray());
for (File f : list)
{
- String filePath = f.getAbsolutePath();
- if (filePath.startsWith(path))
+ StringBuffer filePath = new StringBuffer(f.getAbsolutePath());
+
+ if (f.getAbsolutePath().startsWith(path))
{
if (containParent && input.isDirectory())
- filePath = input.getName() + File.separator + filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(input.getName());
+ filePath.append(File.separator);
+ filePath.append(f.getAbsolutePath().substring(path.length() + 1));
+ }
else if (input.isDirectory())
- filePath = filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(f.getAbsolutePath().substring(path.length() + 1));
+ }
else
- filePath = input.getName();
+ {
+ filePath = new StringBuffer(input.getName());
+ }
}
+
if (f.isFile())
{
FileInputStream fileInput = new FileInputStream(f);
bufInput = new BufferedInputStream(fileInput, BUFFER);
}
else
- filePath += "/";
- addToArchive(zipOutput, bufInput, filePath);
+ {
+ filePath.append("/");
+ }
+
+ addToArchive(zipOutput, bufInput, filePath.toString());
+
if (bufInput != null)
+ {
bufInput.close();
+ }
}
zipOutput.close();
ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
Modified: kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoProperties.java
===================================================================
--- kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoProperties.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ExoProperties.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -18,7 +18,6 @@
*/
package org.exoplatform.commons.utils;
-import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -57,7 +56,7 @@
String[] temp = text.split("\n");
for (int i = 0; i < temp.length; i++)
{
- temp[i] = temp[i].trim();
+ temp[i] = temp[i].trim(); //NOSONAR
if (temp[i].length() > 0)
{
String[] value = temp[i].split("=");
Modified: kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ISO8601.java
===================================================================
--- kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ISO8601.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/ISO8601.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -263,7 +263,8 @@
*/
public static Calendar parse(String dateString, String[] formats) throws ParseException
{
- String problems = "";
+ StringBuffer problems = new StringBuffer();
+
int errOffset = 0;
for (String format : formats)
{
@@ -276,12 +277,24 @@
{
if (errOffset == 0)
errOffset = e.getErrorOffset();
- problems += format + " - " + e.getMessage() + ", error offset " + e.getErrorOffset() + " \n";
+
+ problems.append(format);
+ problems.append(" - ");
+ problems.append(e.getMessage());
+ problems.append(", error offset ");
+ problems.append(e.getErrorOffset());
+ problems.append(" \n");
+
}
catch (NumberFormatException e)
{
errOffset = 0;
- problems += format + " - " + e.getMessage() + " \n";
+
+ problems.append(format);
+ problems.append(" - ");
+ problems.append(e.getMessage());
+ problems.append(" \n");
+
}
}
Modified: kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/MimeTypeResolver.java
===================================================================
--- kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/MimeTypeResolver.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/MimeTypeResolver.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -153,7 +153,7 @@
{
String mimeType = getMimeType(fileName);
- if (mimeType == defaultMimeType)
+ if (mimeType.equals(defaultMimeType))
{
Collection<?> mimeTypes = MimeUtil.getMimeTypes(is);
if (!mimeTypes.isEmpty())
Modified: kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/PropertiesLoader.java
===================================================================
--- kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/PropertiesLoader.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/PropertiesLoader.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -20,7 +20,6 @@
import java.io.IOException;
import java.io.InputStream;
-import java.io.Reader;
import java.util.LinkedHashMap;
import java.util.Properties;
Modified: kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/io/ZipUtil.java
===================================================================
--- kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/io/ZipUtil.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/commons/utils/io/ZipUtil.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -72,26 +72,42 @@
return zipOutput;
for (File f : list)
{
- String filePath = f.getAbsolutePath();
- if (filePath.startsWith(path))
+ StringBuffer filePath = new StringBuffer(f.getAbsolutePath());
+
+ if (f.getAbsolutePath().startsWith(path))
{
if (containParent && input.isDirectory())
- filePath = input.getName() + File.separator + filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(input.getName());
+ filePath.append(File.separator);
+ filePath.append(f.getAbsolutePath().substring(path.length() + 1));
+ }
else if (input.isDirectory())
- filePath = filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(f.getAbsolutePath().substring(path.length() + 1));
+ }
else
- filePath = input.getName();
+ {
+ filePath = new StringBuffer(input.getName());
+ }
}
+
if (f.isFile())
{
FileInputStream fileInput = new FileInputStream(f);
bufInput = new BufferedInputStream(fileInput, BUFFER);
}
else
- filePath += "/";
- addToArchive(zipOutput, bufInput, filePath);
+ {
+ filePath.append("/");
+ }
+
+ addToArchive(zipOutput, bufInput, filePath.toString());
+
if (bufInput != null)
+ {
bufInput.close();
+ }
}
return zipOutput;
}
Modified: kernel/trunk/exo.kernel.commons.test/src/main/java/org/exoplatform/commons/test/TestSecurityManager.java
===================================================================
--- kernel/trunk/exo.kernel.commons.test/src/main/java/org/exoplatform/commons/test/TestSecurityManager.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.commons.test/src/main/java/org/exoplatform/commons/test/TestSecurityManager.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -112,15 +112,15 @@
{
return;
}
-
+
// Only for debug purpose
- // if (!se
- // .getMessage()
- // .equals(
- // "access denied (java.lang.RuntimePermission accessClassInPackage.com.sun.xml.internal.bind.v2.runtime.reflect)"))
- // {
- // se.printStackTrace();
- // }
+ //if (!se
+ // .getMessage()
+ // .equals(
+ // "access denied (java.lang.RuntimePermission accessClassInPackage.com.sun.xml.internal.bind.v2.runtime.reflect)"))
+ //{
+ // se.printStackTrace(); //NOSONAR
+ //}
throw se;
}
Modified: kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/concurrent/SynchronizedQueue.java
===================================================================
--- kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/concurrent/SynchronizedQueue.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/concurrent/SynchronizedQueue.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -81,12 +81,11 @@
{
int cachedQueueSize = queueSize;
int effectiveQueueSize = 0;
- for (Item item = head.next; item != tail; item = item.next)
+ for (Item item = head.next; item != tail; item = item.next) //NOSONAR
{
effectiveQueueSize++;
}
- //
if (effectiveQueueSize != cachedQueueSize)
{
throw new AssertionError("The cached queue size " + cachedQueueSize
Modified: kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java
===================================================================
--- kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.component.cache/src/main/java/org/exoplatform/services/cache/impl/CacheServiceImpl.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -169,7 +169,7 @@
ExoCache simple = null;
if (factory_ != DEFAULT_FACTORY && safeConfig.getClass().isAssignableFrom(ExoCacheConfig.class)
- && safeConfig.getImplementation() != null)
+ && safeConfig.getImplementation() != null) //NOSONAR
{
// The implementation exists and the config is not a sub class of ExoCacheConfig
// we assume that we expect to use the default cache factory
Modified: kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/compress/CompressData.java
===================================================================
--- kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/compress/CompressData.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/compress/CompressData.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -354,25 +354,37 @@
throw new Exception("nothing in the list");
for (File f : list)
{
- String filePath = f.getAbsolutePath();
- if (filePath.startsWith(path))
+ StringBuffer filePath = new StringBuffer(f.getAbsolutePath());
+
+ if (f.getAbsolutePath().startsWith(path))
{
if (containParent && file_.isDirectory())
- filePath = file_.getName() + File.separator + filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(file_.getName());
+ filePath.append(File.separator);
+ filePath.append(f.getAbsolutePath().substring(path.length() + 1));
+ }
else if (file_.isDirectory())
- filePath = filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(f.getAbsolutePath().substring(path.length() + 1));
+ }
else
- filePath = file_.getName();
+ {
+ filePath = new StringBuffer(file_.getName());
+ }
}
+
if (f.isFile())
{
bufInput = PrivilegedFileHelper.fileInputStream(f);
}
else
- filePath += "/";
- addToArchive(jos, bufInput, filePath);
+ {
+ filePath.append("/");
+ }
+
+ addToArchive(jos, bufInput, filePath.toString());
}
-
}
private List<File> listFile(File dir)
@@ -440,23 +452,36 @@
throw new Exception("nothing in the list");
for (File f : list)
{
- String filePath = f.getAbsolutePath();
- if (filePath.startsWith(path))
+ StringBuffer filePath = new StringBuffer(f.getAbsolutePath());
+
+ if (f.getAbsolutePath().startsWith(path))
{
if (containParent && file_.isDirectory())
- filePath = file_.getName() + File.separator + filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(file_.getName());
+ filePath.append(File.separator);
+ filePath.append(f.getAbsolutePath().substring(path.length() + 1));
+ }
else if (file_.isDirectory())
- filePath = filePath.substring(path.length() + 1);
+ {
+ filePath = new StringBuffer(f.getAbsolutePath().substring(path.length() + 1));
+ }
else
- filePath = file_.getName();
+ {
+ filePath = new StringBuffer(file_.getName());
+ }
}
+
if (f.isFile())
{
bufInput = new FileInputStream(f);
}
else
- filePath += "/";
- addToArchive(zos, bufInput, filePath);
+ {
+ filePath.append("/");
+ }
+
+ addToArchive(zos, bufInput, filePath.toString());
}
}
Modified: kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/rpc/impl/AbstractRPCService.java
===================================================================
--- kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/rpc/impl/AbstractRPCService.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/rpc/impl/AbstractRPCService.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -411,7 +411,7 @@
throw new RPCException("Command " + commandId + " unknown, please register your command first");
}
final Message msg = new Message();
- setObject(msg, new MessageBody(dests.size() == 1 && dests != members ? dests.get(0) : null, commandId, args));
+ setObject(msg, new MessageBody(dests.size() == 1 && dests != members ? dests.get(0) : null, commandId, args)); //NOSONAR
RspList rsps = SecurityHelper.doPrivilegedAction(new PrivilegedAction<RspList>()
{
public RspList run()
Modified: kernel/trunk/exo.kernel.component.ext.cache.impl.jboss.v3/src/main/java/org/exoplatform/services/cache/impl/jboss/ExoCacheFactoryImpl.java
===================================================================
--- kernel/trunk/exo.kernel.component.ext.cache.impl.jboss.v3/src/main/java/org/exoplatform/services/cache/impl/jboss/ExoCacheFactoryImpl.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.component.ext.cache.impl.jboss.v3/src/main/java/org/exoplatform/services/cache/impl/jboss/ExoCacheFactoryImpl.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -137,7 +137,8 @@
ALLOW_SHAREABLE_CACHE, ALLOW_SHAREABLE_CACHE_DEFAULT));
}
- ExoCacheFactoryImpl(ExoContainerContext ctx, String cacheConfigTemplate, ConfigurationManager configManager, boolean allowShareableCache)
+ ExoCacheFactoryImpl(ExoContainerContext ctx, String cacheConfigTemplate, ConfigurationManager configManager,
+ boolean allowShareableCache)
{
this.ctx = ctx;
this.configManager = configManager;
Modified: kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/configuration/Namespaces.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/configuration/Namespaces.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/configuration/Namespaces.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -90,7 +90,8 @@
*/
public static String[] getKernelNamespaces()
{
- return new String[]{KERNEL_1_0_URI, KERNEL_1_1_URI, KERNEL_1_2_URI, KERNEL_1_0_URI_OLD, KERNEL_1_1_URI_OLD, KERNEL_1_2_URI_OLD};
+ return new String[]{KERNEL_1_0_URI, KERNEL_1_1_URI, KERNEL_1_2_URI, KERNEL_1_0_URI_OLD, KERNEL_1_1_URI_OLD,
+ KERNEL_1_2_URI_OLD};
}
/**
Modified: kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/xml/ObjectParam.java
===================================================================
--- kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/xml/ObjectParam.java 2011-12-21 14:09:54 UTC (rev 5340)
+++ kernel/trunk/exo.kernel.container/src/main/java/org/exoplatform/container/xml/ObjectParam.java 2011-12-22 13:08:06 UTC (rev 5341)
@@ -149,10 +149,15 @@
{
String[] temp = value.split(" ");
String className = temp[1];
+
if (className.indexOf(".") < 0)
{
- className = package_ + "." + className;
- Class clazz = Class.forName(className);
+ StringBuffer fullName = new StringBuffer();
+ fullName.append(package_);
+ fullName.append(".");
+ fullName.append(className);
+
+ Class clazz = Class.forName(fullName.toString());
return clazz.newInstance();
}
}
12 years, 5 months
exo-jcr SVN: r5340 - in jcr/trunk/exo.jcr.component.core/src: main/java/org/exoplatform/services/jcr/impl/xml/importing and 2 other directories.
by do-not-reply@jboss.org
Author: andrew.plotnikov
Date: 2011-12-21 09:09:54 -0500 (Wed, 21 Dec 2011)
New Revision: 5340
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/DocumentViewImporter.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/SystemViewImporter.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceContentImporter.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceRestoreContentImporter.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java
jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/exporting/TestExportImport.java
Log:
EXOJCR-1690: Wrong persistedVersion of the item during importing
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -31,10 +31,13 @@
import org.exoplatform.services.jcr.core.nodetype.ExtendedNodeTypeManager;
import org.exoplatform.services.jcr.core.security.JCRRuntimePermissions;
import org.exoplatform.services.jcr.dataflow.PersistentDataManager;
+import org.exoplatform.services.jcr.dataflow.PlainChangesLogImpl;
import org.exoplatform.services.jcr.dataflow.persistent.ItemsPersistenceListener;
import org.exoplatform.services.jcr.datamodel.NodeData;
+import org.exoplatform.services.jcr.impl.Constants;
import org.exoplatform.services.jcr.impl.RepositoryContainer;
import org.exoplatform.services.jcr.impl.WorkspaceContainer;
+import org.exoplatform.services.jcr.impl.dataflow.ItemDataRemoveVisitor;
import org.exoplatform.services.jcr.impl.dataflow.session.TransactionableDataManager;
import org.exoplatform.services.jcr.impl.xml.ExportImportFactory;
import org.exoplatform.services.jcr.impl.xml.importing.ContentImporter;
@@ -467,19 +470,19 @@
try
{
-
Map<String, Object> context = new HashMap<String, Object>();
context.put(ContentImporter.RESPECT_PROPERTY_DEFINITIONS_CONSTRAINTS, true);
NodeData rootData = ((NodeData)((NodeImpl)sysSession.getRootNode()).getData());
TransactionableDataManager dataManager = sysSession.getTransientNodesManager().getTransactManager();
- ExportImportFactory eiFactory = new ExportImportFactory();
+
+ cleanWorkspace(dataManager);
StreamImporter importer =
- eiFactory.getWorkspaceImporter(rootData, ImportUUIDBehavior.IMPORT_UUID_COLLISION_THROW, dataManager,
- dataManager, sysSession.getWorkspace().getNodeTypesHolder(), sysSession.getLocationFactory(),
- sysSession.getValueFactory(), getNamespaceRegistry(), sysSession.getAccessManager(),
- sysSession.getUserState(), context, this, wsName);
+ new ExportImportFactory().getWorkspaceImporter(rootData, ImportUUIDBehavior.IMPORT_UUID_COLLISION_THROW,
+ dataManager, dataManager, sysSession.getWorkspace().getNodeTypesHolder(),
+ sysSession.getLocationFactory(), sysSession.getValueFactory(), getNamespaceRegistry(),
+ sysSession.getAccessManager(), sysSession.getUserState(), context, this, wsName);
importer.importStream(xmlStream);
}
finally
@@ -488,6 +491,20 @@
}
}
+ private void cleanWorkspace(TransactionableDataManager dataManager)
+ throws RepositoryException
+ {
+ NodeData rootData = (NodeData)dataManager.getItemData(Constants.ROOT_UUID);
+
+ ItemDataRemoveVisitor removeVisitor = new ItemDataRemoveVisitor(dataManager, null);
+ rootData.accept(removeVisitor);
+
+ PlainChangesLogImpl changesLog = new PlainChangesLogImpl();
+ changesLog.addAll(removeVisitor.getRemovedStates());
+
+ dataManager.save(changesLog);
+ }
+
/**
* Internal Remove Workspace.
*
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/DocumentViewImporter.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/DocumentViewImporter.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/DocumentViewImporter.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -155,14 +155,14 @@
}
ImportPropertyData newProperty =
- new ImportPropertyData(QPath.makeChildPath(nodeData.getQPath(), Constants.JCR_PRIMARYTYPE), IdGenerator
- .generate(), 0, PropertyType.NAME, nodeData.getIdentifier(), false);
+ new ImportPropertyData(QPath.makeChildPath(nodeData.getQPath(), Constants.JCR_PRIMARYTYPE),
+ IdGenerator.generate(), -1, PropertyType.NAME, nodeData.getIdentifier(), false);
newProperty.setValue(new TransientValueData(Constants.NT_UNSTRUCTURED));
changesLog.add(new ItemState(newProperty, ItemState.ADDED, true, getAncestorToSave()));
newProperty =
- new ImportPropertyData(QPath.makeChildPath(nodeData.getQPath(), Constants.JCR_XMLCHARACTERS), IdGenerator
- .generate(), 0, PropertyType.STRING, nodeData.getIdentifier(), false);
+ new ImportPropertyData(QPath.makeChildPath(nodeData.getQPath(), Constants.JCR_XMLCHARACTERS),
+ IdGenerator.generate(), -1, PropertyType.STRING, nodeData.getIdentifier(), false);
newProperty.setValue(new TransientValueData(text.toString()));
changesLog.add(new ItemState(newProperty, ItemState.ADDED, true, getAncestorToSave()));
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/SystemViewImporter.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/SystemViewImporter.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/SystemViewImporter.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -79,9 +79,9 @@
private static Log log = ExoLogger.getLogger("exo.jcr.component.core.SystemViewImporter");
protected PropertyInfo propertyInfo = new PropertyInfo();
-
+
protected Map<String, NodePropertiesInfo> mapNodePropertiesInfo = new HashMap<String, NodePropertiesInfo>();
-
+
/**
* Root node name.
*/
@@ -159,11 +159,11 @@
if (propertyData != null)
{
changesLog.add(new ItemState(propertyData, ItemState.ADDED, true, getAncestorToSave()));
-
+
ImportNodeData currentNodeInfo = (ImportNodeData)getParent();
-
+
NodePropertiesInfo currentNodePropertiesInfo = mapNodePropertiesInfo.get(currentNodeInfo.getIdentifier());
-
+
currentNodePropertiesInfo.addProperty(propertyData);
}
}
@@ -224,9 +224,9 @@
newNodeData.setACL(parentData.getACL());
newNodeData.setOrderNumber(getNextChildOrderNum(parentData));
newNodeData.setIdentifier(IdGenerator.generate());
-
+
changesLog.add(new ItemState(newNodeData, ItemState.ADDED, true, getAncestorToSave()));
-
+
mapNodePropertiesInfo.put(newNodeData.getIdentifier(), new NodePropertiesInfo(newNodeData));
tree.push(newNodeData);
@@ -330,8 +330,9 @@
currentNodeInfo.setMixinTypeNames(mixinNames);
propertyData =
- new ImportPropertyData(QPath.makeChildPath(currentNodeInfo.getQPath(), propertyInfo.getName()), propertyInfo
- .getIndentifer(), 0, propertyInfo.getType(), currentNodeInfo.getIdentifier(), true);
+ new ImportPropertyData(QPath.makeChildPath(currentNodeInfo.getQPath(), propertyInfo.getName()),
+ propertyInfo.getIndentifer(), -1, propertyInfo.getType(), currentNodeInfo.getIdentifier(), true);
+
propertyData.setValues(parseValues());
return propertyData;
}
@@ -344,14 +345,14 @@
private void endNode() throws RepositoryException
{
ImportNodeData currentNodeInfo = (ImportNodeData)tree.pop();
-
+
NodePropertiesInfo currentNodePropertiesInfo = mapNodePropertiesInfo.get(currentNodeInfo.getIdentifier());
-
+
if (currentNodePropertiesInfo != null)
{
checkProperties(currentNodePropertiesInfo);
}
-
+
mapNodePropertiesInfo.remove(currentNodeInfo.getIdentifier());
currentNodeInfo.setMixinTypeNames(currentNodeInfo.getMixinTypeNames());
@@ -365,7 +366,6 @@
currentNodeInfo.getExoPrivileges()));
}
-
/**
* Checking priopertis if nodetype is nt:frozennode
*
@@ -378,7 +378,7 @@
private void checkProperties(NodePropertiesInfo currentNodePropertiesInfo) throws RepositoryException
{
if (currentNodePropertiesInfo.getNode().getQPath().isDescendantOf(Constants.JCR_VERSION_STORAGE_PATH)
- && currentNodePropertiesInfo.getNode().getPrimaryTypeName().equals(Constants.NT_FROZENNODE))
+ && currentNodePropertiesInfo.getNode().getPrimaryTypeName().equals(Constants.NT_FROZENNODE))
{
InternalQName fptName = null;
List<InternalQName> fmtNames = new ArrayList<InternalQName>();
@@ -391,14 +391,15 @@
if (propertyData.getQName().equals(Constants.JCR_FROZENPRIMARYTYPE))
{
fptName =
- InternalQName.parse(new String(propertyData.getValues().get(0).getAsByteArray(),
- Constants.DEFAULT_ENCODING));
+ InternalQName.parse(new String(propertyData.getValues().get(0).getAsByteArray(),
+ Constants.DEFAULT_ENCODING));
}
else if (propertyData.getQName().equals(Constants.JCR_FROZENMIXINTYPES))
{
for (ValueData valueData : propertyData.getValues())
{
- fmtNames.add(InternalQName.parse(new String(valueData.getAsByteArray(), Constants.DEFAULT_ENCODING)));
+ fmtNames
+ .add(InternalQName.parse(new String(valueData.getAsByteArray(), Constants.DEFAULT_ENCODING)));
}
}
}
@@ -415,22 +416,22 @@
{
throw new RepositoryException(e.getMessage(), e);
}
-
+
InternalQName nodePrimaryTypeName = currentNodePropertiesInfo.getNode().getPrimaryTypeName();
InternalQName[] nodeMixinTypeName = currentNodePropertiesInfo.getNode().getMixinTypeNames();
for (ImportPropertyData propertyData : currentNodePropertiesInfo.getProperties())
{
PropertyDefinitionDatas defs =
- nodeTypeDataManager.getPropertyDefinitions(propertyData.getQName(), nodePrimaryTypeName,
- nodeMixinTypeName);
-
- if (defs == null || (defs != null && defs.getAnyDefinition().isResidualSet()))
+ nodeTypeDataManager.getPropertyDefinitions(propertyData.getQName(), nodePrimaryTypeName,
+ nodeMixinTypeName);
+
+ if (defs == null || (defs != null && defs.getAnyDefinition().isResidualSet()))
{
PropertyDefinitionDatas vhdefs =
- nodeTypeDataManager.getPropertyDefinitions(propertyData.getQName(), fptName, fmtNames
- .toArray(new InternalQName[fmtNames.size()]));
-
+ nodeTypeDataManager.getPropertyDefinitions(propertyData.getQName(), fptName,
+ fmtNames.toArray(new InternalQName[fmtNames.size()]));
+
if (vhdefs != null)
{
boolean isMultivalue = (vhdefs.getDefinition(true) != null ? true : false);
@@ -468,8 +469,8 @@
{
//do nothing
}
- else if (!nodeTypeDataManager.isChildNodePrimaryTypeAllowed(primaryTypeName, parentNodeData
- .getPrimaryTypeName(), parentNodeData.getMixinTypeNames()))
+ else if (!nodeTypeDataManager.isChildNodePrimaryTypeAllowed(primaryTypeName,
+ parentNodeData.getPrimaryTypeName(), parentNodeData.getMixinTypeNames()))
{
throw new ConstraintViolationException("Can't add node " + nodeData.getQName().getAsString() + " to "
+ parentNodeData.getQPath().getAsString() + " node type " + sName
@@ -482,12 +483,13 @@
nodeData.setPrimaryTypeName(primaryTypeName);
propertyData =
- new ImportPropertyData(QPath.makeChildPath(nodeData.getQPath(), propertyInfo.getName()), propertyInfo
- .getIndentifer(), 0, propertyInfo.getType(), nodeData.getIdentifier(), false);
+ new ImportPropertyData(QPath.makeChildPath(nodeData.getQPath(), propertyInfo.getName()),
+ propertyInfo.getIndentifer(), -1, propertyInfo.getType(), nodeData.getIdentifier(), false);
+
propertyData.setValues(parseValues());
-
+
tree.push(nodeData);
-
+
return propertyData;
}
@@ -576,11 +578,11 @@
propertyData =
new ImportPropertyData(QPath.makeChildPath(currentNodeInfo.getQPath(), propertyInfo.getName()),
- propertyInfo.getIndentifer(), 0, propertyInfo.getType(), currentNodeInfo.getIdentifier(), isMultivalue);
+ propertyInfo.getIndentifer(), -1, propertyInfo.getType(), currentNodeInfo.getIdentifier(), isMultivalue);
propertyData.setValues(values);
}
-
+
return propertyData;
}
@@ -595,20 +597,20 @@
ImportPropertyData propertyData;
ImportNodeData currentNodeInfo = (ImportNodeData)tree.pop();
- currentNodeInfo.setMixReferenceable(nodeTypeDataManager.isNodeType(Constants.MIX_REFERENCEABLE, currentNodeInfo
- .getPrimaryTypeName(), currentNodeInfo.getMixinTypeNames()));
+ currentNodeInfo.setMixReferenceable(nodeTypeDataManager.isNodeType(Constants.MIX_REFERENCEABLE,
+ currentNodeInfo.getPrimaryTypeName(), currentNodeInfo.getMixinTypeNames()));
if (currentNodeInfo.isMixReferenceable())
{
- currentNodeInfo.setMixVersionable(nodeTypeDataManager.isNodeType(Constants.MIX_VERSIONABLE, currentNodeInfo
- .getPrimaryTypeName(), currentNodeInfo.getMixinTypeNames()));
+ currentNodeInfo.setMixVersionable(nodeTypeDataManager.isNodeType(Constants.MIX_VERSIONABLE,
+ currentNodeInfo.getPrimaryTypeName(), currentNodeInfo.getMixinTypeNames()));
checkReferenceable(currentNodeInfo, propertyInfo.getValues().get(0).toString());
}
propertyData =
- new ImportPropertyData(QPath.makeChildPath(currentNodeInfo.getQPath(), propertyInfo.getName()), propertyInfo
- .getIndentifer(), 0, propertyInfo.getType(), currentNodeInfo.getIdentifier(), false);
-
+ new ImportPropertyData(QPath.makeChildPath(currentNodeInfo.getQPath(), propertyInfo.getName()),
+ propertyInfo.getIndentifer(), -1, propertyInfo.getType(), currentNodeInfo.getIdentifier(), false);
+
if (currentNodeInfo.getQPath().isDescendantOf(Constants.JCR_VERSION_STORAGE_PATH))
{
propertyData.setValue(new TransientValueData(propertyInfo.getValues().get(0).toString()));
@@ -619,9 +621,9 @@
}
tree.push(currentNodeInfo);
-
+
mapNodePropertiesInfo.put(currentNodeInfo.getIdentifier(), new NodePropertiesInfo(currentNodeInfo));
-
+
return propertyData;
}
@@ -686,8 +688,8 @@
// TODO cleanup
// TransientValueData binaryValue = new TransientValueData(vStream);
TransientValueData binaryValue =
- new TransientValueData(k, null, vStream, null, valueFactory.getFileCleaner(), valueFactory
- .getMaxBufferSize(), null, true);
+ new TransientValueData(k, null, vStream, null, valueFactory.getFileCleaner(),
+ valueFactory.getMaxBufferSize(), null, true);
// Call to spool file into tmp
binaryValue.getAsStream().close();
vStream.close();
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceContentImporter.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceContentImporter.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceContentImporter.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -18,11 +18,6 @@
*/
package org.exoplatform.services.jcr.impl.xml.importing;
-import java.util.Map;
-
-import javax.jcr.NamespaceRegistry;
-import javax.jcr.RepositoryException;
-
import org.exoplatform.services.jcr.access.AccessControlList;
import org.exoplatform.services.jcr.access.AccessManager;
import org.exoplatform.services.jcr.core.nodetype.NodeTypeDataManager;
@@ -40,6 +35,11 @@
import org.exoplatform.services.log.Log;
import org.exoplatform.services.security.ConversationState;
+import java.util.Map;
+
+import javax.jcr.NamespaceRegistry;
+import javax.jcr.RepositoryException;
+
/**
* Created by The eXo Platform SAS.
*
@@ -115,19 +115,22 @@
if (!isFirstElementChecked)
{
if (!ROOT_NODE_NAME.equals(svName))
+ {
throw new RepositoryException("The first element must be root. But found '" + svName + "'");
+ }
+
isFirstElementChecked = true;
}
if (ROOT_NODE_NAME.equals(svName))
{
- currentNodeName = Constants.ROOT_PATH.getName();
+ // remove the wrong root from the stack
+ tree.pop();
- newNodeData = processRootNode(parentData.getQPath());
+ newNodeData = addChangesForRootNodeInitialization(parentData);
}
else
{
-
currentNodeName = locationFactory.parseJCRName(svName).getInternalName();
nodeIndex = getNodeIndex(parentData, currentNodeName, null);
newNodeData = new ImportNodeData(parentData, currentNodeName, nodeIndex);
@@ -154,19 +157,17 @@
}
}
- protected ImportNodeData processRootNode(QPath parentPath)
+ /**
+ * @param rootData
+ * the root node data of workspace
+ */
+ protected ImportNodeData addChangesForRootNodeInitialization(NodeData rootData) throws RepositoryException
{
- // remove the wrong root from the stack
- tree.pop();
-
- ImportNodeData newNodeData =
+ ImportNodeData newRootData =
new ImportNodeData(Constants.ROOT_PATH, Constants.ROOT_UUID, -1, Constants.NT_UNSTRUCTURED,
- new InternalQName[0], 0, null, new AccessControlList());
+ new InternalQName[0], -1, null, new AccessControlList());
+ changesLog.add(new ItemState(rootData, ItemState.ADDED, true, null));
- // Not persistent state. Root created during the creation workspace.
- changesLog.add(new ItemState(newNodeData, ItemState.ADDED, true, parentPath, false, false));
-
- return newNodeData;
+ return newRootData;
}
-
}
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceRestoreContentImporter.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceRestoreContentImporter.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/WorkspaceRestoreContentImporter.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -18,18 +18,13 @@
*/
package org.exoplatform.services.jcr.impl.xml.importing;
-import org.exoplatform.services.jcr.access.AccessControlList;
import org.exoplatform.services.jcr.access.AccessManager;
import org.exoplatform.services.jcr.core.nodetype.NodeTypeDataManager;
import org.exoplatform.services.jcr.dataflow.ItemDataConsumer;
-import org.exoplatform.services.jcr.dataflow.ItemState;
-import org.exoplatform.services.jcr.datamodel.InternalQName;
-import org.exoplatform.services.jcr.datamodel.QPath;
import org.exoplatform.services.jcr.impl.Constants;
import org.exoplatform.services.jcr.impl.core.LocationFactory;
import org.exoplatform.services.jcr.impl.core.RepositoryImpl;
import org.exoplatform.services.jcr.impl.core.value.ValueFactoryImpl;
-import org.exoplatform.services.jcr.impl.xml.importing.dataflow.ImportNodeData;
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
import org.exoplatform.services.security.ConversationState;
@@ -76,23 +71,4 @@
currentWorkspaceName);
}
-
- @Override
- protected ImportNodeData processRootNode(QPath parentPath)
- {
- // remove the wrong root (null) from the stack
- tree.pop();
-
- ImportNodeData newNodeData =
- new ImportNodeData(Constants.ROOT_PATH, Constants.ROOT_UUID, -1, Constants.NT_UNSTRUCTURED,
- new InternalQName[0], 0, null, new AccessControlList());
-
- // persisted.
- changesLog.add(new ItemState(newNodeData, ItemState.ADDED, true, parentPath, false, true));
-
- // TODO check root nodetype(s) in backup !!!
-
- return newNodeData;
- }
-
}
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -99,6 +99,7 @@
this.qpath = QPath.makeChildPath(parent.getQPath(), name, index);
this.parentIdentifier = parent.getIdentifier();
this.nodeTypes = new ArrayList<NodeTypeData>();
+ this.persistedVersion = -1;
}
/**
Modified: jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/exporting/TestExportImport.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/exporting/TestExportImport.java 2011-12-19 12:16:11 UTC (rev 5339)
+++ jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/exporting/TestExportImport.java 2011-12-21 14:09:54 UTC (rev 5340)
@@ -18,6 +18,12 @@
*/
package org.exoplatform.services.jcr.api.exporting;
+import org.exoplatform.services.jcr.dataflow.ItemState;
+import org.exoplatform.services.jcr.impl.core.NodeImpl;
+import org.exoplatform.services.jcr.impl.core.PropertyImpl;
+import org.exoplatform.services.jcr.impl.dataflow.TransientNodeData;
+import org.exoplatform.services.jcr.impl.dataflow.TransientPropertyData;
+import org.exoplatform.services.jcr.util.IdGenerator;
import org.xml.sax.SAXException;
import java.io.File;
@@ -54,56 +60,6 @@
super();
}
- // TODO Fix. Move to non system workspace.
- public void _testWorkspaceExportImportValuesSysView() throws Exception
- {
- Node testNode = root.addNode("testExportImport");
- for (int i = 0; i < valList.size(); i++)
- {
- testNode.setProperty("prop" + i + "_string", valList.get(i), PropertyType.STRING);
- testNode.setProperty("prop" + i + "_binary", valList.get(i), PropertyType.BINARY);
- }
- session.save();
- File destFile = File.createTempFile("testWorkspaceExportImportValuesSysView", ".xml");
- destFile.deleteOnExit();
- OutputStream outStream = new FileOutputStream(destFile);
- session.exportWorkspaceSystemView(outStream, false, false);
- outStream.close();
-
- testNode.remove();
- session.save();
-
- session.importXML(root.getPath(), new FileInputStream(destFile), ImportUUIDBehavior.IMPORT_UUID_COLLISION_THROW);
-
- session.save();
-
- Node newNode = root.getNode("testExportImport");
-
- for (int i = 0; i < valList.size(); i++)
- {
- if (valList.get(i).length > 1)
- {
- Value[] stringValues = newNode.getProperty("prop" + i + "_string").getValues();
- for (int j = 0; j < stringValues.length; j++)
- {
- assertEquals(stringValues[j].getString(), valList.get(i)[j]);
- }
- Value[] binaryValues = newNode.getProperty("prop" + i + "_binary").getValues();
- for (int j = 0; j < stringValues.length; j++)
- {
- assertEquals(binaryValues[j].getString(), valList.get(i)[j]);
- }
- }
- else
- {
- assertEquals(valList.get(i)[0], newNode.getProperty("prop" + i + "_string").getValue().getString());
- assertEquals(valList.get(i)[0], newNode.getProperty("prop" + i + "_binary").getValue().getString());
-
- }
- }
- destFile.delete();
- }
-
public void testExportImportCustomNodeType() throws Exception
{
Node folder = root.addNode("childNode", "nt:folder");
@@ -442,6 +398,89 @@
assertTrue(testNode.isNodeType("mix:referenceable"));
assertTrue(testNode.hasProperty("jcr:uuid"));
assertTrue(testNode.isCheckedOut());
+ }
+ public void testShouldThrowExceptionWhenExistingNodeAddedAfterImporting() throws Exception
+ {
+ Node testNode = root.addNode("testNode");
+ testNode.addMixin("mix:referenceable");
+ TransientNodeData node = (TransientNodeData)((NodeImpl)testNode.addNode("test2")).getData();
+ session.save();
+
+ File contentFile = new File("target/input-sysview.xml");
+ OutputStream outStream = new FileOutputStream(contentFile);
+ try
+ {
+ session.exportSystemView(testNode.getPath(), outStream, false, false);
+ }
+ finally
+ {
+ outStream.close();
+ }
+
+ testNode.remove();
+ session.save();
+
+ session.importXML(root.getPath(), new FileInputStream(contentFile), ImportUUIDBehavior.IMPORT_UUID_CREATE_NEW);
+ session.save();
+
+ TransientNodeData newNodeData =
+ new TransientNodeData(node.getQPath(), IdGenerator.generate(), node.getPersistedVersion(),
+ node.getPrimaryTypeName(), node.getMixinTypeNames(), node.getOrderNumber(), root.getNode("testNode")
+ .getUUID(), node.getACL());
+
+ ItemState state = ItemState.createAddedState(newNodeData);
+ session.getTransientNodesManager().updateItemState(state);
+
+ try
+ {
+ session.save();
+ fail();
+ }
+ catch (Exception e)
+ {
+ }
}
+
+ public void testShouldThrowExceptionWhenExistingPropertyAddedAfterImporting() throws Exception
+ {
+ Node testNode = root.addNode("testNode");
+ testNode.addMixin("mix:referenceable");
+ TransientPropertyData prop =
+ (TransientPropertyData)((PropertyImpl)testNode.setProperty("testProperty", "testValue")).getData();
+ session.save();
+
+ File contentFile = new File("target/input-sysview.xml");
+ OutputStream outStream = new FileOutputStream(contentFile);
+ try
+ {
+ session.exportSystemView(testNode.getPath(), outStream, false, false);
+ }
+ finally
+ {
+ outStream.close();
+ }
+
+ testNode.remove();
+ session.save();
+
+ session.importXML(root.getPath(), new FileInputStream(contentFile), ImportUUIDBehavior.IMPORT_UUID_CREATE_NEW);
+ session.save();
+
+ TransientPropertyData newPropertyData =
+ new TransientPropertyData(prop.getQPath(), IdGenerator.generate(), prop.getPersistedVersion(), prop.getType(),
+ root.getNode("testNode").getUUID(), prop.isMultiValued(), prop.getValues());
+
+ ItemState state = ItemState.createAddedState(newPropertyData);
+ session.getTransientNodesManager().updateItemState(state);
+
+ try
+ {
+ session.save();
+ fail();
+ }
+ catch (Exception e)
+ {
+ }
+ }
}
12 years, 5 months
exo-jcr SVN: r5338 - in jcr/branches: 1.14-RSYNC and 1 other directory.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2011-12-19 07:15:55 -0500 (Mon, 19 Dec 2011)
New Revision: 5338
Added:
jcr/branches/1.14-RSYNC/
jcr/branches/1.14-RSYNC/pom.xml
Removed:
jcr/branches/1.14-RSYNC/pom.xml
Log:
[maven-release-plugin] copy for branch 1.14-RSYNC
Deleted: jcr/branches/1.14-RSYNC/pom.xml
===================================================================
--- jcr/trunk/pom.xml 2011-12-16 09:49:19 UTC (rev 5334)
+++ jcr/branches/1.14-RSYNC/pom.xml 2011-12-19 12:15:55 UTC (rev 5338)
@@ -1,520 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.exoplatform</groupId>
- <artifactId>foundation-parent</artifactId>
- <version>9</version>
- </parent>
-
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>jcr-parent</artifactId>
- <version>1.14.6-GA-SNAPSHOT</version>
- <packaging>pom</packaging>
- <name>eXo JCR</name>
-
- <scm>
- <connection>scm:svn:http://anonsvn.jboss.org/repos/exo-jcr/jcr/trunk</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/exo-jcr/jcr/trunk</developerConnection>
- <url>http://fisheye.jboss.org/browse/exo-jcr/jcr/trunk</url>
- </scm>
-
- <properties>
- <exo.product.name>exo-jcr</exo.product.name>
- <exo.product.specification>1.14</exo.product.specification>
- <org.exoplatform.kernel.version>2.3.6-GA-SNAPSHOT</org.exoplatform.kernel.version>
- <org.exoplatform.core.version>2.4.6-GA-SNAPSHOT</org.exoplatform.core.version>
- <org.exoplatform.ws.version>2.2.6-GA-SNAPSHOT</org.exoplatform.ws.version>
- <org.exoplatform.doc-style.version>1</org.exoplatform.doc-style.version>
- </properties>
-
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.commons</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.commons.test</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.command</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.container</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.common</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.cache</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.ext.rpc.impl.jgroups.v3</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.database</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.document</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.organization.api</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.security.core</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.script.groovy</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.rest.core</artifactId>
- <version>${org.exoplatform.ws.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.rest.ext</artifactId>
- <version>${org.exoplatform.ws.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.commons</artifactId>
- <version>${org.exoplatform.ws.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.frameworks.json</artifactId>
- <version>${org.exoplatform.ws.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.frameworks.servlet</artifactId>
- <version>${org.exoplatform.ws.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.component.ext</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.component.core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.framework.command</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.component.ftp</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.component.webdav</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.framework.web</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.framework.ftpclient</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.cluster.testclient</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.applications.fckeditor</artifactId>
- <version>${project.version}</version>
- <type>war</type>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.applications.browser</artifactId>
- <version>${project.version}</version>
- <type>war</type>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.applications.rest</artifactId>
- <version>${project.version}</version>
- <type>war</type>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.connectors.jca</artifactId>
- <type>rar</type>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- <version>2.6</version>
- </dependency>
- <dependency>
- <groupId>commons-chain</groupId>
- <artifactId>commons-chain</artifactId>
- <version>1.2</version>
- </dependency>
- <dependency>
- <groupId>org.jibx</groupId>
- <artifactId>jibx-run</artifactId>
- <version>${version.jibx.plugin}</version>
- </dependency>
- <dependency>
- <groupId>picocontainer</groupId>
- <artifactId>picocontainer</artifactId>
- <version>1.1</version>
- </dependency>
- <dependency>
- <groupId>xml-apis</groupId>
- <artifactId>xml-apis</artifactId>
- <version>1.0.b2</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.5.8</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <version>1.5.8</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>javax.jcr</groupId>
- <artifactId>jcr</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>2.4</version>
- </dependency>
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>jsr311-api</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- <version>1.1</version>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <version>1.5</version>
- </dependency>
- <dependency>
- <groupId>net.sf.jtidy</groupId>
- <artifactId>jtidy</artifactId>
- <version>r938</version>
- </dependency>
- <dependency>
- <groupId>org.apache.lucene</groupId>
- <artifactId>lucene-core</artifactId>
- <version>2.9.4</version>
- </dependency>
- <dependency>
- <groupId>org.apache.lucene</groupId>
- <artifactId>lucene-spellchecker</artifactId>
- <version>2.9.4</version>
- </dependency>
- <dependency>
- <groupId>org.apache.lucene</groupId>
- <artifactId>lucene-memory</artifactId>
- <version>2.9.4</version>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.stream</groupId>
- <artifactId>sjsxp</artifactId>
- <version>1.0.1</version>
- </dependency>
- <dependency>
- <groupId>commons-dbcp</groupId>
- <artifactId>commons-dbcp</artifactId>
- <version>1.2.2</version>
- <exclusions>
- <exclusion>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
- <version>1.5.5</version>
- </dependency>
- <dependency>
- <groupId>commons-beanutils</groupId>
- <artifactId>commons-beanutils</artifactId>
- <version>1.8.3</version>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>1.1.1</version>
- </dependency>
- <dependency>
- <groupId>xpp3</groupId>
- <artifactId>xpp3</artifactId>
- <version>1.1.4c</version>
- </dependency>
- <dependency>
- <groupId>concurrent</groupId>
- <artifactId>concurrent</artifactId>
- <version>1.3.4</version>
- </dependency>
- <dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- <version>3.2.1</version>
- </dependency>
- <dependency>
- <groupId>org.apache.ws.commons</groupId>
- <artifactId>ws-commons-util</artifactId>
- <version>1.0.1</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jackrabbit</groupId>
- <artifactId>jackrabbit-jcr-tests</artifactId>
- <version>1.6.4</version>
- <classifier>sources</classifier>
- </dependency>
- <dependency>
- <groupId>org.hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <version>2.0.0</version>
- </dependency>
- <dependency>
- <groupId>commons-fileupload</groupId>
- <artifactId>commons-fileupload</artifactId>
- <version>1.2.1</version>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.bind</groupId>
- <artifactId>jaxb-impl</artifactId>
- <version>2.1.7</version>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector</artifactId>
- <version>1.5</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.cache</groupId>
- <artifactId>jbosscache-core</artifactId>
- <version>3.2.7.GA</version>
- <exclusions>
- <exclusion>
- <groupId>jgroups</groupId>
- <artifactId>jgroups</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>jboss.jbossts</groupId>
- <artifactId>jbossjts</artifactId>
- <version>4.6.1.GA</version>
- </dependency>
- <dependency>
- <groupId>jboss.jbossts</groupId>
- <artifactId>jbossts-common</artifactId>
- <version>4.6.1.GA</version>
- </dependency>
- <dependency>
- <groupId>org.aspectj</groupId>
- <artifactId>aspectjrt</artifactId>
- <version>1.6.10</version>
- </dependency>
- <dependency>
- <groupId>org.infinispan</groupId>
- <artifactId>infinispan-core</artifactId>
- <version>5.1.0.CR1</version>
- </dependency>
- <dependency>
- <groupId>org.infinispan</groupId>
- <artifactId>infinispan-cachestore-jdbc</artifactId>
- <version>5.1.0.CR1</version>
- </dependency>
- <dependency>
- <groupId>commons-io</groupId>
- <artifactId>commons-io</artifactId>
- <version>1.3.2</version>
- </dependency>
- </dependencies>
- </dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <build>
- <resources>
- <resource>
- <directory>src/main/java</directory>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.xsl</include>
- <include>**/*.properties</include>
- <include>**/*.ion</include>
- <include>**/*.conf</include>
- <include>**/*.config</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.xsl</include>
- <include>**/*.properties</include>
- <include>**/login.conf</include>
- <include>**/*.ion</include>
- <include>**/*.conf</include>
- <include>**/*.config</include>
- </includes>
- </resource>
- </resources>
- <testResources>
- <testResource>
- <directory>src/test/java</directory>
- <includes>
- <include>**/*.properties</include>
- <include>**/*.xml</include>
- <include>**/*.txt</include>
- <include>**/*.conf</include>
- <include>**/*.config</include>
- </includes>
- </testResource>
- <testResource>
- <directory>src/test/resources</directory>
- <includes>
- <include>**/*.properties</include>
- <include>**/*.xml</include>
- <include>**/*.txt</include>
- <include>**/*.conf</include>
- <include>**/*.config</include>
- </includes>
- </testResource>
- </testResources>
- </build>
- <modules>
- <module>exo.jcr.component.core</module>
- <module>exo.jcr.component.core.impl.infinispan.v5</module>
- <module>exo.jcr.component.statistics</module>
- <module>exo.jcr.component.ext</module>
- <module>exo.jcr.component.ftp</module>
- <module>exo.jcr.component.webdav</module>
- <module>exo.jcr.connectors.jca</module>
- <module>exo.jcr.framework.command</module>
- <module>exo.jcr.framework.web</module>
- <module>exo.jcr.framework.ftpclient</module>
- <module>applications</module>
- <module>exo.jcr.docs</module>
- <module>packaging/module</module>
- </modules>
- <profiles>
- <profile>
- <id>release</id>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>org.apache.apache.resources</groupId>
- <artifactId>apache-source-release-assembly-descriptor</artifactId>
- <version>1.0.2</version>
- </dependency>
- </dependencies>
- <executions>
- <execution>
- <id>source-release-assembly</id>
- <phase>package</phase>
- <goals>
- <goal>single</goal>
- </goals>
- <configuration>
- <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
- <descriptorRefs>
- <descriptorRef>source-release</descriptorRef>
- </descriptorRefs>
- <tarLongFileFormat>gnu</tarLongFileFormat>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-</project>
Copied: jcr/branches/1.14-RSYNC/pom.xml (from rev 5337, jcr/trunk/pom.xml)
===================================================================
--- jcr/branches/1.14-RSYNC/pom.xml (rev 0)
+++ jcr/branches/1.14-RSYNC/pom.xml 2011-12-19 12:15:55 UTC (rev 5338)
@@ -0,0 +1,520 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ 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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.exoplatform</groupId>
+ <artifactId>foundation-parent</artifactId>
+ <version>9</version>
+ </parent>
+
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>jcr-parent</artifactId>
+ <version>1.14.6-GA-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <name>eXo JCR</name>
+
+ <scm>
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/exo-jcr/jcr/branches/1.14-RSYNC</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/exo-jcr/jcr/branches/1.14-RSYNC</developerConnection>
+ <url>http://fisheye.jboss.org/browse/exo-jcr/jcr/branches/1.14-RSYNC</url>
+ </scm>
+
+ <properties>
+ <exo.product.name>exo-jcr</exo.product.name>
+ <exo.product.specification>1.14</exo.product.specification>
+ <org.exoplatform.kernel.version>2.3.6-GA-SNAPSHOT</org.exoplatform.kernel.version>
+ <org.exoplatform.core.version>2.4.6-GA-SNAPSHOT</org.exoplatform.core.version>
+ <org.exoplatform.ws.version>2.2.6-GA-SNAPSHOT</org.exoplatform.ws.version>
+ <org.exoplatform.doc-style.version>1</org.exoplatform.doc-style.version>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.commons</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.commons.test</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.command</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.container</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.common</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.cache</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.ext.rpc.impl.jgroups.v3</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.database</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.document</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.organization.api</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.security.core</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.script.groovy</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.rest.core</artifactId>
+ <version>${org.exoplatform.ws.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.rest.ext</artifactId>
+ <version>${org.exoplatform.ws.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.commons</artifactId>
+ <version>${org.exoplatform.ws.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.frameworks.json</artifactId>
+ <version>${org.exoplatform.ws.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.frameworks.servlet</artifactId>
+ <version>${org.exoplatform.ws.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.component.ext</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.component.core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.framework.command</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.component.ftp</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.component.webdav</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.framework.web</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.framework.ftpclient</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.cluster.testclient</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.applications.fckeditor</artifactId>
+ <version>${project.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.applications.browser</artifactId>
+ <version>${project.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.applications.rest</artifactId>
+ <version>${project.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.connectors.jca</artifactId>
+ <type>rar</type>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.6</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-chain</groupId>
+ <artifactId>commons-chain</artifactId>
+ <version>1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jibx</groupId>
+ <artifactId>jibx-run</artifactId>
+ <version>${version.jibx.plugin}</version>
+ </dependency>
+ <dependency>
+ <groupId>picocontainer</groupId>
+ <artifactId>picocontainer</artifactId>
+ <version>1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ <version>1.0.b2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.5.8</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <version>1.5.8</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.jcr</groupId>
+ <artifactId>jcr</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>2.4</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>jsr250-api</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.ws.rs</groupId>
+ <artifactId>jsr311-api</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ <version>1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <version>1.5</version>
+ </dependency>
+ <dependency>
+ <groupId>net.sf.jtidy</groupId>
+ <artifactId>jtidy</artifactId>
+ <version>r938</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-core</artifactId>
+ <version>2.9.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-spellchecker</artifactId>
+ <version>2.9.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-memory</artifactId>
+ <version>2.9.4</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.stream</groupId>
+ <artifactId>sjsxp</artifactId>
+ <version>1.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-dbcp</groupId>
+ <artifactId>commons-dbcp</artifactId>
+ <version>1.2.2</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-pool</groupId>
+ <artifactId>commons-pool</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>commons-pool</groupId>
+ <artifactId>commons-pool</artifactId>
+ <version>1.5.5</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.8.3</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>xpp3</groupId>
+ <artifactId>xpp3</artifactId>
+ <version>1.1.4c</version>
+ </dependency>
+ <dependency>
+ <groupId>concurrent</groupId>
+ <artifactId>concurrent</artifactId>
+ <version>1.3.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>3.2.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ws.commons</groupId>
+ <artifactId>ws-commons-util</artifactId>
+ <version>1.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.jackrabbit</groupId>
+ <artifactId>jackrabbit-jcr-tests</artifactId>
+ <version>1.6.4</version>
+ <classifier>sources</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <version>2.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-fileupload</groupId>
+ <artifactId>commons-fileupload</artifactId>
+ <version>1.2.1</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-impl</artifactId>
+ <version>2.1.7</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector</artifactId>
+ <version>1.5</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.cache</groupId>
+ <artifactId>jbosscache-core</artifactId>
+ <version>3.2.7.GA</version>
+ <exclusions>
+ <exclusion>
+ <groupId>jgroups</groupId>
+ <artifactId>jgroups</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>jboss.jbossts</groupId>
+ <artifactId>jbossjts</artifactId>
+ <version>4.6.1.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>jboss.jbossts</groupId>
+ <artifactId>jbossts-common</artifactId>
+ <version>4.6.1.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjrt</artifactId>
+ <version>1.6.10</version>
+ </dependency>
+ <dependency>
+ <groupId>org.infinispan</groupId>
+ <artifactId>infinispan-core</artifactId>
+ <version>5.1.0.CR1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.infinispan</groupId>
+ <artifactId>infinispan-cachestore-jdbc</artifactId>
+ <version>5.1.0.CR1</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>1.3.2</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.xsl</include>
+ <include>**/*.properties</include>
+ <include>**/*.ion</include>
+ <include>**/*.conf</include>
+ <include>**/*.config</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.xsl</include>
+ <include>**/*.properties</include>
+ <include>**/login.conf</include>
+ <include>**/*.ion</include>
+ <include>**/*.conf</include>
+ <include>**/*.config</include>
+ </includes>
+ </resource>
+ </resources>
+ <testResources>
+ <testResource>
+ <directory>src/test/java</directory>
+ <includes>
+ <include>**/*.properties</include>
+ <include>**/*.xml</include>
+ <include>**/*.txt</include>
+ <include>**/*.conf</include>
+ <include>**/*.config</include>
+ </includes>
+ </testResource>
+ <testResource>
+ <directory>src/test/resources</directory>
+ <includes>
+ <include>**/*.properties</include>
+ <include>**/*.xml</include>
+ <include>**/*.txt</include>
+ <include>**/*.conf</include>
+ <include>**/*.config</include>
+ </includes>
+ </testResource>
+ </testResources>
+ </build>
+ <modules>
+ <module>exo.jcr.component.core</module>
+ <module>exo.jcr.component.core.impl.infinispan.v5</module>
+ <module>exo.jcr.component.statistics</module>
+ <module>exo.jcr.component.ext</module>
+ <module>exo.jcr.component.ftp</module>
+ <module>exo.jcr.component.webdav</module>
+ <module>exo.jcr.connectors.jca</module>
+ <module>exo.jcr.framework.command</module>
+ <module>exo.jcr.framework.web</module>
+ <module>exo.jcr.framework.ftpclient</module>
+ <module>applications</module>
+ <module>exo.jcr.docs</module>
+ <module>packaging/module</module>
+ </modules>
+ <profiles>
+ <profile>
+ <id>release</id>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.apache.resources</groupId>
+ <artifactId>apache-source-release-assembly-descriptor</artifactId>
+ <version>1.0.2</version>
+ </dependency>
+ </dependencies>
+ <executions>
+ <execution>
+ <id>source-release-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ <configuration>
+ <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
+ <descriptorRefs>
+ <descriptorRef>source-release</descriptorRef>
+ </descriptorRefs>
+ <tarLongFileFormat>gnu</tarLongFileFormat>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
12 years, 5 months
exo-jcr SVN: r5336 - jcr/trunk/exo.jcr.component.core.impl.infinispan.v5.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-12-19 05:58:29 -0500 (Mon, 19 Dec 2011)
New Revision: 5336
Modified:
jcr/trunk/exo.jcr.component.core.impl.infinispan.v5/pom.xml
Log:
EXOJCR-1682: fix pom
Modified: jcr/trunk/exo.jcr.component.core.impl.infinispan.v5/pom.xml
===================================================================
--- jcr/trunk/exo.jcr.component.core.impl.infinispan.v5/pom.xml 2011-12-19 10:27:17 UTC (rev 5335)
+++ jcr/trunk/exo.jcr.component.core.impl.infinispan.v5/pom.xml 2011-12-19 10:58:29 UTC (rev 5336)
@@ -72,7 +72,7 @@
<dependency>
<groupId>org.exoplatform.jcr</groupId>
<artifactId>exo.jcr.component.core</artifactId>
- <classifier>tests</classifier>
+ <classifier>sources</classifier>
<scope>test</scope>
<version>${project.version}</version>
<exclusions>
12 years, 5 months
exo-jcr SVN: r5335 - jcr/tags/1.12.11-GA.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-12-19 05:27:17 -0500 (Mon, 19 Dec 2011)
New Revision: 5335
Added:
jcr/tags/1.12.11-GA/readme.txt
Log:
JCR-1703: added release notes
Added: jcr/tags/1.12.11-GA/readme.txt
===================================================================
--- jcr/tags/1.12.11-GA/readme.txt (rev 0)
+++ jcr/tags/1.12.11-GA/readme.txt 2011-12-19 10:27:17 UTC (rev 5335)
@@ -0,0 +1,615 @@
+JCR 1.12.11-GA release notes
+===========================
+
+eXoPlatform Java Content Repository (JSR-170) implementation and Extension services with clustering support.
+
+Changes of 1.12.11-GA
+=====================
+Bug
+ * [JCR-1660] - Problems during testing of Lock operations (EditLockedCommonNodeTest, EditLockedCommonDeepNodeTest)
+ * [JCR-1661] - TESTING: Regression during daily testing.
+ * [JCR-1665] - Regression during load testing - on AddNtFileWithMetadataTestCleanDBOracle
+ * [JCR-1667] - Invalid session.logout() calls in NodeHierarchyCreatorImpl
+ * [JCR-1672] - Group parent id is null in the GroupHandlerImpl#addChild(Session, Group, Group, boolean)
+ * [JCR-1677] - Could not intercept any jcr action listener only in the trunk of a predefined workspace
+ * [JCR-1680] - webdav bug when clicking go back link in a folder whose name contains a space
+ * [JCR-1684] - exception when we import the same node twice with his version history
+
+Improvement
+ * [JCR-1663] - Contention on JCRDateFormat on heavy load
+ * [JCR-1671] - Pb of EventListener not triggered when renaming a document
+ * [WS-270] - Replace TimeZone.getTimeZone with the util method from the kernel to have less contention
+ * [KER-178] - Provide an Util method to give an alternative to TimeZone.getTimeZone with less contention
+ * [COR-237] - minConnection and maxConnection params in the ldap configuration are not used
+
+Task
+ * [JCR-1647] - Backport source distribution to branch 1.12.x
+ * [JCR-1678] - Bad performance in ChildAxisQuery.SimpleChildrenCalculator.getHits()
+ * [JCR-1689] - Propose a maven profile for each supported configuration
+ * [WS-268] - Backport source distribution to branch 2.1.x
+ * [KER-176] - Backport source distribution to branch 2.2.x
+ * [KER-180] - Propose a maven profile for each supported configuration
+ * [COR-243] - Backport source distribution to branch 2.3.x
+
+Changes of 1.12.10-GA
+=====================
+
+Bug
+ * [JCR-1630] - Impossible to move files in Webdav when the destination path contains space (Windows)
+ * [JCR-1639] - Delay in replication of Nodes data in JBoss EPP Cluster
+ * [JCR-1643] - Fetching exo:symlinks node in JCR repostiory in clustering environment.
+ * [JCR-1650] - Lists stored into the cache can be inconsistent in cluster environment
+ * [JCR-1652] - Empty multi-values properties should processed properly
+
+Feedback
+ * [JCR-1653] - Performance issue with Oracle DB 11.2.0.2
+
+Improvement
+ * [JCR-1654] - Performance issues met due to SecureRandom.nextBytes under heavy load
+ * [COR-34] - Improve performance of ldap organization service
+ * [KER-175] - [Backport]Find a way to have a name for MBeans of JBossCaches used by the JCR
+
+Task
+ * [JCR-1633] - [Backport]Allow to keep missing values into the JCR Cache
+ * [JCR-1634] - [Backport]Find a way to have a name for MBeans of JBossCaches used by the JCR
+ * [JCR-1636] - [Backport]Allow to create sessions from ACLs
+ * [JCR-1656] - Remove all the explicit GC calls
+ * [WS-269] - Remove all the explicit GC calls
+
+Sub-task
+ * [COR-238] - Validate and apply patch
+ * [COR-239] - Implementation CacheHandler
+ * [COR-240] - Testing LDAPOrganizationService with cache support
+
+
+Changes of 1.12.9-GA
+=====================
+
+Bug
+ * [JCR-1501] - Problems with dispalying non-latin names (ar,fr,ua,ru,vn) after restore in backup
+ * [JCR-1545] - Can't open a document with a name containing non-latin characters (ru,ua,fr,vn,ar)
+ * [JCR-1577] - Check in DefaultChangesFilter if we use the right ids in case of a IOException while updating the index of the parentSearchManager
+ * [JCR-1593] - Incorrect parsing destination header in MOVE and COPY webdav methods
+ * [JCR-1594] - Problem of renaming folders in WebDav
+ * [JCR-1597] - Problem of webdav on windows 7
+ * [JCR-1602] - File with non-latin name can't be open: Can't open remote file.ErrorCode:500
+ * [JCR-1604] - JCR addNode within a transaction causes javax.transaction.HeuristicMixedException in the first access to the node
+ * [JCR-1605] - Can't access file containing special characters in file name via Webdav
+ * [JCR-1614] - system view exporting has a problem when the exported node contains the properties that are multiple value type but have only one value.
+ * [JCR-1615] - Still check lock on parent while isDeep = false
+ * [JCR-1616] - Error when get node definition for node
+ * [JCR-1618] - javax.jcr.InvalidItemStateException: Node can't be saved No same-name sibling exists with index 2
+ * [JCR-1622] - Thread not stopped when the application is stopped
+ * [JCR-1629] - No eviction policy is allowed in case of the cache for indexing
+ * [JCR-1631] - Violation de contrainte unique (SYSTEM.JCR_IDX_SITEM_PARENT) error during concurrent ADD NODE transaction
+ * [COR-236] - Case sensitivityProblem with Oracle Virtual Directory and SQL Server
+ * [WS-265] - Stop the StandaloneContainer on context destroyed
+
+Improvement
+ * [JCR-1543] - Dialog window "About" has incorrect version of jcr in webdav ms office plugin
+ * [JCR-1571] - Query with path is too slow in case the db is big
+ * [JCR-1572] - Improve the re-indexing mechanism to take advantage of multi-cores
+ * [JCR-1579] - Query with path is too slow when we have a node with a lot of subnodes
+ * [COR-216] - User profiles initialization listeners are not triggered for LDAP users (LDAP Users can not access to any File Explorer drive)
+ * [COR-235] - Return only exptected attributes in SimpleLdapUserListAccess
+
+Task
+ * [JCR-1563] - Use QueryParam to parameter "backup-set-path" in methods of HTTPBackupAgent
+ * [JCR-1586] - Configure time-outs for tests
+ * [JCR-1611] - Backporting EXOJCR-1234 to JCR 1.12.x
+ * [JCR-1613] - Backporting EXOJCR-1305 to JCR 1.12.x
+ * [JCR-1632] - Cleanup build
+ * [COR-228] - Make PdfDocumentReader.getProperties() using PdfBox instead iText
+ * [WS-266] - Do not generate files in src directory of a project
+
+Changes of 1.12.8-GA
+=====================
+Bug
+ * [JCR-1560] - BackupManager restore : Temporary files not deleted
+ * [JCR-1562] - Check problem with compatibility of incremental backup for JCR 1.12.x to JCR 1.14.x.
+ * [JCR-1581] - NFS stale handle
+ * [JCR-1584] - ConstraintViolationException when Importing Version history of a nt:folder node having a nt:file child node
+
+Documentation
+ * [JCR-1561] - Document Repository or Workspace initialization from backup [apply patch]
+ * [JCR-1580] - Fix webdav docbook section since webdav bug with Mac OS Finder is fixed
+ * [JCR-1582] - Improve JCR Doc
+
+Improvement
+ * [JCR-1496] - remove some unncessary jars
+ * [JCR-1538] - Webdav: files icons is the same as folder icons
+ * [JCR-1573] - Reduce the time spent in ParentNodeEvictionActionPolicy
+ * [KER-168] - MimeTypeResolver does not work well with IE7
+
+Task
+ * [JCR-1578] - Check in IndexerSingletonStoreCacheLoader if the children should not be removed
+ * [JCR-1583] - Upgrade to exo-parent 8.1
+
+
+Changes of 1.12.7-GA
+=====================
+
+Bug
+ * [JCR-1483] - When a folder is cut server->client, folder on server doesn't remove.
+ * [JCR-1508] - Property not found dc:title during testing RandomReadNtFileWithMetadataTest
+ * [JCR-1529] - Node restore result depends on cache eviction
+ * [JCR-1541] - SessionDataManager.listChildPropertiesData(NodeData parent) must not return ValueDatas
+ * [JCR-1542] - XML elements are incorrectly parsed while using Woodstox XML processor
+ * [JCR-1544] - Exception error during edit content
+ * [JCR-1549] - Problems in JCR content after being imported
+ * [JCR-1552] - Corrupted data if the server is stopped while document is locked
+ * [JCR-1556] - The If-Modified-Since property in the HTTP header doesn't exist
+ * [JCR-1557] - If Groovy REST service deploy fails on JCR startup other workable services may not be deployed
+ * [JCR-1558] - FileCleaner is null in SysViewWorkspaceInitializer and BackupWorkapceInitializer
+ * [JCR-1564] - FORM authentication doesn't work with jcrbackup tool and Platform
+ * [JCR-1565] - Repository restore fails using exobackup tool with Component unregister error
+ * [JCR-1566] - Restored version nodes get id from jcr:uuid property instead fetch generated id
+ * [JCR-1574] - IncrementalBackupJob should be thread safe
+ * [WS-261] - Platform Packaging fails due to mistake in WS packaging JS file
+
+Documentation
+ * [JCR-1559] - Document databases supported by eXo JCR
+
+Improvement
+ * [JCR-1054] - Make Backup restore easier
+ * [JCR-1499] - Backup console binary distribution
+ * [JCR-1547] - Avoid to get an item from the DB if the parent node is new
+ * [JCR-1550] - Changes log traversing is under optimized
+ * [JCR-1567] - Code review of ACL managment in case of copy/moving nodes
+ * [JCR-1570] - DB clean on MySQL should not use iterating over all db
+ * [COR-217] - remove some unncessary jars
+ * [COR-218] - Support more MIME types
+ * [WS-258] - remove some unncessary jars
+
+Task
+ * [JCR-1463] - Lock operations does not checks any permission.
+ * [JCR-1502] - JCR backupset should be fully independent
+ * [JCR-1519] - Update XPath query ordering chapter in jcr documents
+ * [JCR-1568] - Check portability and compatibility backup in JCR 1.14.x and 1.12.x
+
+
+Changes of 1.12.6-GA
+=====================
+
+Bug
+ * [JCR-1497] - Backup console throws NPE if backup agent isn't deployed on server
+ * [JCR-1522] - Not correct MBean components registration when PortalContainer contains more then one repository
+ * [JCR-1527] - Create Group personnal folder should be after Group creation
+ * [JCR-1530] - Wrong Content-Type header for files over a certain size
+ * [JCR-1532] - MySQL-UTF8 dialect default collation can be case-insensitive - need case-sensitive set explicitly
+ * [JCR-1533] - Remove permission on child isn't used
+ * [JCR-1534] - Problem with uploading files via MacOS client
+ * [JCR-1539] - Webdav doesn't work on JBoss
+
+Improvement
+ * [JCR-1506] - Reduce contention on read in NodeTypeDataHierarchyHolder if possible
+ * [JCR-1523] - Avoid iterating over a List thanks to its iterator when it is possible [Part #2]
+
+Task
+ * [JCR-1521] - Adopt webdav-clients to eXo JCR 1.12.6-GA
+ * [JCR-1524] - Move JCR framework commands list configuration to it right place
+ * [JCR-1525] - Publish the reference guide in docbook format
+
+
+Changes of 1.12.6-CR02
+=====================
+
+Bug
+ * [JCR-1468] - Index already present error during cluster start
+ * [JCR-1504] - Indexer doesn't fully release resources on stop
+ * [JCR-1509] - Access Denied in jcr:content with anonim__ permission
+ * [JCR-1511] - WEBDav view in a webbrowser has hardcoded image links
+ * [JCR-1513] - Problems when start backup-console
+
+Improvement
+ * [JCR-1505] - Avoid iterating over a List thanks to its iterator when it is possible
+
+Task
+ * [JCR-1488] - Limit the total amount of WorkerThreads: apply patch
+
+Changes of 1.12.6-CR01
+=====================
+
+Bug
+ * [JCR-1470] - refresh breaks webdav published files
+ * [JCR-1482] - Corrupted Data if the server is stopped while somebobdy is editing a document in ECMS
+ * [JCR-1485] - Unknown error and strange behavior when mary edits a webcontent
+ * [JCR-1490] - Some Unit Tests on DB2 related to the CAS plugin fail
+ * [JCR-1494] - FTP server doesn't show list of workspaces after repository restoring
+
+Documentation
+ * [JCR-1433] - jcr backup/restore
+
+Improvement
+ * [KER-164] - Allow to use variables to define the realm, the rest context and the portal container name of a PortalContainerDefinition
+ * [WS-256] - Allow to use a String as entity for a JSON response
+ * [JCR-1459] - Whole Repository backup support in Backup Console tool
+ * [JCR-1469] - JCR clustering consumes lot of native threads
+ * [JCR-1491] - The result of the method getReferencesData is never stored into the cache
+
+Task
+ * [JCR-1489] - eXo JCR doesn't work with Oracle 11g R2 RAC
+ * [JCR-1495] - Bind slf4j-log4j and log4j dependencies onto the test phase of the various modules of JCR [part #2]
+
+Sub-task
+ * [JCR-1481] - Adding support form authentication in backup console
+
+Changes of 1.12.5-GA
+=====================
+
+Bug
+ * [KER-162] - Simple skin from examples folder doesn't appear at list
+ * [KER-163] - CachingContainer returns unregistered components
+ * [COR-213] - User logged-out and cannot login after some inactivity
+ * [WS-254] - Add org.exoplatform.services.rest.ext.method.filter.MethodAccessFilter in container configuration by default
+ * [JCR-1438] - Problem with JCR versionning
+ * [JCR-1449] - Can't get property of a node if it has a child node with the same name with the property
+ * [JCR-1450] - JCROrganizationService contains nodetype with same name as in CS
+ * [JCR-1453] - Missed nodetypes in cluster testing configuration
+ * [JCR-1462] - Problems during testing of backup on jcr 1.12.5-GA-SNAPSHOT
+ * [JCR-1466] - RepositoryException: URI is not hierarchical on remove workspace via backup console
+ * [JCR-1474] - NPE when try to import data via WorkspaceContentImporter
+
+Improvement
+ * [KER-160] - Prevent the JobSchedulerServiceImpl to launch jobs that rely on non started services in JBoss AS
+ * [KER-161] - Make the JobSchedulerServiceImpl support multi portal containers
+
+Task
+ * [JCR-1455] - Doc's title should be rename from eXoJCR Reference Manual to eXo JCR Developer Guide
+ * [JCR-1461] - Remove timestamp from names of jar-files in application bundles
+ * [JCR-1467] - Cannot use webdav service with a version of jcr:content
+ * [JCR-1471] - Updating eXo JCR version in ra.xml automatically
+ * [JCR-1472] - Adopt Backup client article
+ * [JCR-1473] - merge performance improvements
+
+Changes of 1.12.4-GA
+=====================
+
+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-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-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-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
+
+Feature Request
+ * [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
+
+Task
+ * [EXOJCR-896] - Port Manageability article into docbook
+ * [EXOJCR-905] - Merge the reference guide and the user guide in one single guide
+ * [EXOJCR-913] - Abuse of INFO level logging for DocNumberCache.get()
+ * [EXOJCR-914] - excessive INFO logging by IndexMerger.run()
+ * [EXOJCR-915] - excessive INFO logging by IndexMerger.run()
+ * [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-892] - Remove Fake Chapters
+
+Changes of 1.12.3-GA
+=====================
+
+Bug
+ * [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-774] - If-Modified-Since doesn't seem to be well managed in the Wevdav
+ * [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-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-806] - Problems while copying "ftp-ftp"
+ * [EXOJCR-810] - TestRemoveFromValueStorage failed in configuration without ValueStorage
+ * [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-835] - TestMultiDbJDBCConnection and TestSingleDbJDBCConnection must drop also JCR_xCONTAINER table on tearDown
+ * [EXOJCR-857] - Exception during PROPFIND request if some property content "%" and after not hex chracters
+ * [EXOJCR-865] - Data corrupt after restore a node which has been imported with version history
+ * [EXOJCR-882] - TestCaching fails on Windows XP SP 2 with Russian locale
+
+Feature Request
+ * [EXOJCR-230] - Refactore and move in main part of exo.ws.rest.core project class AbstractResourceTest
+ * [EXOJCR-782] - No longer force extension developers to redefine the whole dependencies list
+ * [EXOJCR-783] - Use cached table for HSLQLDB tables
+ * [EXOJCR-797] - Unable see error message from ProxyService if remote server does not provide Content-Type header.
+
+Task
+ * [EXOJCR-392] - Siblings reordering may update not all the child-items in cache
+ * [EXOJCR-751] - Prepare maintenance branch for jcr 1.12
+ * [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-867] - Port documentation for Kernel from wiki to docbook
+ * [EXOJCR-868] - Port documentation for Core from wiki to docbook
+ * [EXOJCR-869] - Port documentation for JCR from wiki to docbook
+ * [EXOJCR-870] - Cleanup WS documentation
+ * [EXOJCR-871] - Document RestServicesList service
+ * [EXOJCR-881] - Port functionality of EXOJCR-482 in jcr-1.12.x
+ * [EXOJCR-884] - Rename JCR documentation artifacts to exo.jcr.* form
+
+Changes of 1.12.2-GA
+====================
+
+Bug
+ * [EXOJCR-497] - JCR serialization test wrong logic with CASable storage
+ * [EXOJCR-730] - Restored repository not accessible after restart Tomcat
+ * [EXOJCR-731] - Deploy error (500 - Unexpected error. null) of REST Service with annotation inheritance.
+ * [EXOJCR-735] - JCR repositories created in runtime is not available after eXo Social restart
+ * [EXOJCR-736] - Problems with anonymous entrance on FTP and NPE
+ * [EXOJCR-743] - InitialContextBinder bind twice same datasource in some case
+ * [EXOJCR-762] - Check whether the repository with the given name doesn't exists before starting restore from backup
+
+Feature Request
+ * [EXOJCR-640] - Migrate to newer version of Apache PDFBox ( and FontBox ) if possible;
+
+Task
+ * [EXOJCR-596] - Upload eXoJCR documentation on jboss.org
+ * [EXOJCR-668] - Validate format of the default values of the property definition during the nodetype registration
+ * [EXOJCR-738] - Search does not work with source in CDATA tag in XML document
+ * [EXOJCR-740] - Constrains ranges are not used in NodeTypeImpl.canSetProperty() validation
+ * [EXOJCR-741] - Backupconsole build improvements
+ * [EXOJCR-765] - Use StringBuilder instead of String concatenation in MSExcelDocumentReader.getContentAsText
+ * [EXOJCR-681] - Decreasing perfomance while running WebdavReadWriteTest tests several times in row
+
+
+
+Changes of 1.12.2-CR1
+=====================
+
+Bug
+ * [EXOJCR-175] - Problems with HTTPBackupAgent - Cyrillic symbols aren't showing after restore
+ * [EXOJCR-683] - java.io.IOException: Socket read failed on heavy loaded WebdavAddBLOBTest benchmark test
+ * [EXOJCR-697] - SQL search by date doesn't work
+ * [EXOJCR-698] - URL encoding in SEARCH and PROPFIND responces differs.
+ * [EXOJCR-700] - Problem in user search with MySql and PostgresDB
+ * [EXOJCR-704] - JCR testuite hangs on sybase
+ * [EXOJCR-708] - Problem with full text searching in text files with non-latin content.
+ * [EXOJCR-712] - Concurrent service creation leads to duplicate service instantiation
+ * [EXOJCR-724] - Bad URL in the error message when a component cannot be instantiated
+ * [EXOJCR-726] - Improper conversion of jboss.server.config.url system property value into File (spaces in filename problem)
+ * [EXOJCR-729] - The FileNotFoundException in restore workspace over BackupWorkspaceinitializer
+ * [EXOJCR-734] - The binary values was not stored in incremental backup.
+
+Feature Request
+ * [EXOJCR-705] - Expose listeners in OrganizationService
+ * [EXOJCR-707] - Check repository management operations on thread safety
+ * [EXOJCR-718] - Allow to get the complete configuration at runtime
+ * [EXOJCR-719] - Better debugging of components loaded
+ * [EXOJCR-721] - Add possibility to use customized GroovyClassLoader in org.exoplatform.services.script.groovy.GroovyScriptInstantiator
+ * [EXOJCR-722] - Make it possible to use other then org.exoplatform.services.rest.impl.method.DefaultMethodInvoker
+
+Task
+ * [EXOJCR-354] - Invoke post read after permissions check
+ * [EXOJCR-663] - Make possibility extends classes RequestDispatcher and ResourceBinder.
+ * [EXOJCR-691] - Fix your missing dependencies
+ * [EXOJCR-692] - Find the reason why the method of type Node.hasNodes is much slower since beta5
+ * [EXOJCR-694] - Change JBC dependencies to use 3.2.4.GA
+ * [EXOJCR-696] - Reduce the concurrency Level in the JBoss Cache Config
+ * [EXOJCR-711] - Misleading error message appears when the external settings cannot be found
+ * [EXOJCR-714] - Improve the usability of the ContainerLifecyclePlugin
+ * [EXOJCR-715] - Ensure that the ExoContainer is fully ThreadSafe
+ * [EXOJCR-716] - Prevent the JobSchedulerServiceImpl to launch jobs that rely on non started services
+ * [EXOJCR-717] - Add to RestRegistryService method without repositoryName in PathParam, insted use current repository. Methods with repositoryName in PathParam marks as Deprecated.
+ * [EXOJCR-720] - Make possibility extends classe GroovyScript2RestLoader
+ * [EXOJCR-723] - JCR Statistics: Describe the arguments of the methods exposed through JMX
+ * [EXOJCR-728] - implementing RequestLifecycle for REST services
+
+
+Changes of 1.12.1-GA
+=====================
+
+Bug
+ * [EXOJCR-612] - JBoss Cache Implementation for the Cache Service test TestAbstractExoCache fails
+ * [EXOJCR-638] - get mixin types through the NodeTypeUtil class
+ * [EXOJCR-661] - Cannot access to the MBeans through the JConsole in Standalone mode
+ * [EXOJCR-662] - Processing SQLException may cause infinite loop.
+ * [EXOJCR-664] - org.exoplatform.services.jcr.impl.storage.value.fs.TestFileIOChannel.testConcurrentRead fail with MSSQL and DB2
+ * [EXOJCR-667] - Temporary spooled file can be not found on save
+ * [EXOJCR-671] - ConcurrentModificationException in FileCleaner with heavy load
+ * [EXOJCR-672] - An eXoCache clear should be local
+ * [EXOJCR-687] - Some JCR parameters that are time parameter are retrieved as number instead of time
+
+Feature Request
+ * [EXOJCR-498] - Provide more details when a JCR query is invalid
+ * [EXOJCR-634] - Upload of a file with special characters like " ' " in filename is not supported by the FTPservice
+ * [EXOJCR-645] - Add ExtHttpHeaders.JAXRS_BODY_PROVIDED header for unhandled exception in REST services and set error message to body responce
+
+Task
+ * [EXOJCR-578] - Use Fisheye in SCM urls used in maven
+ * [EXOJCR-611] - Provide a way to collect statistics around the JCR API accesses
+ * [EXOJCR-639] - Find the reason why the methods of type Property.setValue are much slower since beta5
+ * [EXOJCR-685] - Change JBC dependencies to use 3.2.3.GA
+ * [EXOJCR-689] - Standartize eXo JCR docnmentation projects description.
+ * [EXOJCR-690] - Apply changes in the eXo JCR project in order to be able to publish artifacts in the nexus of JBoss
+ * [EXOJCR-545] - Checking performance on SearchNodesByPropertyTest
+ * [EXOJCR-643] - Improve the performances of the lucene indexing in a cluster by removing contention for read operations
+
+
+Changes of 1.12.1-CR1
+=====================
+
+Bug
+ * [EXOJCR-256] - There are server errors "500 Internal Server Error:" during creation repository or workspace by RestRepositoryService
+ * [EXOJCR-348] - Test problem: TestCleanableFileStreamValueData failed
+ * [EXOJCR-519] - DAILY TESTS are going too long (avg time=5hours)
+ * [EXOJCR-531] - Problems with Lock operations
+ * [EXOJCR-546] - TESTING: Performance testing problems. LockUnlockOwnNodeTest - TPS fell down
+ * [EXOJCR-548] - problem with import & export node
+ * [EXOJCR-555] - NPE with cache eviction at startup
+ * [EXOJCR-557] - Problem while uploading *.pdf to WebDAV server using Mac OS Finder
+ * [EXOJCR-558] - Files uploaded by Mac OS finder are displayed with size "0"
+ * [EXOJCR-559] - Problems with daily performance testing - on PostgreSQL 8.2.9
+ * [EXOJCR-567] - The REST servlet dump errors when the client cut the socket too early should be only a debug log
+ * [EXOJCR-572] - Can not create workspace with default configuration of lock manager
+ * [EXOJCR-581] - Listing the directory in TreeFile may return null during race condition, causing NPE.
+ * [EXOJCR-584] - User's research is case sensitive
+ * [EXOJCR-586] - Missed slf4j dependency for jcr applications on tomcat AS
+ * [EXOJCR-587] - session.save() throws NPE after node reordering
+ * [EXOJCR-588] - Tests errors in eXo XML Processing Services on MACOS
+ * [EXOJCR-591] - Problem with ObservationManager
+ * [EXOJCR-599] - deadlock during dashboard editing
+ * [EXOJCR-600] - Concurrency problem (java.util.HashMap.put called from CacheableLockManagerImpl.getSessionLockManager(CacheableLockManagerImpl.java:473))
+ * [EXOJCR-601] - gatein sample extension should not be required
+ * [EXOJCR-602] - StackOverflow on JsonGeneratorImpl
+ * [EXOJCR-603] - impossible to change user password
+ * [EXOJCR-607] - Sybase Issue with GateIn
+ * [EXOJCR-608] - XaSessionImpl as XA resource should be unique per user, workspace and repository
+ * [EXOJCR-614] - Node.getReferences fail in some cases
+ * [EXOJCR-615] - Need check nodedata to avoid exception in method NodeImpl.isNodeType(String).
+ * [EXOJCR-619] - Log record forging (Security Issue)
+ * [EXOJCR-621] - Conflict between symlink feature and Jbosscache
+ * [EXOJCR-623] - Unable to get a version of document using WebDAV (HTTP Response 404 returned).
+ * [EXOJCR-633] - Problems with manual testing - tomcat-server on ftp -.IndexOutOfBoundsException
+
+Feature Request
+ * [EXOJCR-549] - Backup and Restore of a whole Repository
+ * [EXOJCR-571] - Change PersitedValueDataReader/Writer
+ * [EXOJCR-573] - Create database and bind DataSource in runtime
+ * [EXOJCR-582] - DB script modification for oracle11 compatibility
+ * [EXOJCR-585] - Allow to get statistics on Database Access without using a Profiler
+ * [EXOJCR-616] - Remove repository container from repositoryContainers map when repository container start fail.
+ * [EXOJCR-617] - Map environment parameters for all String fields in Repository configuration
+
+Task
+ * [EXOJCR-150] - Ftp client tests failute
+ * [EXOJCR-250] - Add human readable message in case Workspace creation error via HTTPBackupAgent
+ * [EXOJCR-393] - Create indexer load test
+ * [EXOJCR-523] - Upgrade to JBoss Cache 3.2.3.GA
+ * [EXOJCR-550] - Bind slf4j-log4j and log4j dependencies onto the test phase of the various modules of JCR
+ * [EXOJCR-552] - Allow to Test eXo JCR 1.12 on EC2
+ * [EXOJCR-575] - Remove unused PairChangesLog class
+ * [EXOJCR-589] - Limit network traffic and thread blocking for the Lucene Indexer in a cluster
+ * [EXOJCR-590] - DO NOT exclude tests from a parent pom
+ * [EXOJCR-598] - Allow to disable the hints used for the Complex Queries on oracle
+ * [EXOJCR-605] - Normalize logging categories
+ * [EXOJCR-631] - Find a reason, why functional tests fails under Tornado.MySQL with "Cannot create PoolableConnectionFactory (Too many connections)" message.
+ * [EXOJCR-632] - svn: File 'jcr.packaging.module/1.12.0-CP01/jcr.packaging.module-1.12.0-CP01.js' has inconsistent newlines
+
+
+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.2.11-GA
+* eXo Core 2.3.11-GA
+* eXo WS 2.1.11-GA
+* eXo JCR 1.12.11-GA
+
+1.12.11-GA tasks:
+https://jira.exoplatform.org/browse/JCR/fixforversion/13363
+https://jira.exoplatform.org/browse/COR/fixforversion/13361
+https://jira.exoplatform.org/browse/WS/fixforversion/13370
+https://jira.exoplatform.org/browse/KER/fixforversion/13367
+
+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 jcr.ear into $jboss_home/server/default/deploy
+ * 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, 5 months
exo-jcr SVN: r5334 - in kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services: cache/impl/infinispan/distributed and 2 other directories.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-12-16 04:49:19 -0500 (Fri, 16 Dec 2011)
New Revision: 5334
Modified:
kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/ExoCacheFactoryImpl.java
kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/distributed/DistributedExoCache.java
kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/generic/GenericExoCacheCreator.java
kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/ispn/AbstractMapper.java
Log:
EXOJCR-1682: Improve ISPN integration to support properly the distribution mode (kernel)
* Fixed some Sonar violations
Modified: kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/ExoCacheFactoryImpl.java
===================================================================
--- kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/ExoCacheFactoryImpl.java 2011-12-15 17:46:42 UTC (rev 5333)
+++ kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/ExoCacheFactoryImpl.java 2011-12-16 09:49:19 UTC (rev 5334)
@@ -201,8 +201,9 @@
}
catch (Exception e)
{
- throw new ExoCacheInitException("Cannot initialize the CacheManager corresponding to the configuration '"
- + cacheConfigTemplate + "'", e);
+ throw new ExoCacheInitException(
+ "Cannot initialize the CacheManager corresponding to the configuration '" + cacheConfigTemplate
+ + "'", e);
}
GlobalConfiguration config = cacheManager.getGlobalConfiguration();
@@ -224,7 +225,7 @@
{
throw new ExoCacheInitException(e);
}
- }
+ }
}
/**
@@ -293,35 +294,36 @@
{
try
{
- cacheManager = SecurityHelper.doPrivilegedExceptionAction(new PrivilegedExceptionAction<DefaultCacheManager>()
- {
- public DefaultCacheManager run() throws Exception
+ cacheManager =
+ SecurityHelper.doPrivilegedExceptionAction(new PrivilegedExceptionAction<DefaultCacheManager>()
{
- // A custom configuration has been set
- if (LOG.isInfoEnabled())
- LOG.info("A custom configuration has been set for the cache '" + region + "'.");
- // Create the CacheManager by loading the configuration
- DefaultCacheManager customCacheManager =
- new DefaultCacheManager(configManager.getInputStream(customConfig), false);
- GlobalConfiguration gc = customCacheManager.getGlobalConfiguration();
- // Configure JGroups and JMX since it could affect the state of the Global Config
- configureCacheManager(gc);
- // Check if a CacheManager with the same GlobalConfiguration exists
- DefaultCacheManager currentCacheManager = mappingGlobalConfigCacheManager.get(gc);
- if (currentCacheManager == null)
+ public DefaultCacheManager run() throws Exception
{
- // No cache manager has been defined so far for this Cache Configuration
- currentCacheManager = customCacheManager;
- // Use a different cache manager name to prevent naming conflict
- gc.fluent().globalJmxStatistics()
- .cacheManagerName(gc.getCacheManagerName() + "_" + region + "_" + ctx.getName());
- currentCacheManager.start();
- // We register this new cache manager
- mappingGlobalConfigCacheManager.put(gc, customCacheManager);
+ // A custom configuration has been set
+ if (LOG.isInfoEnabled())
+ LOG.info("A custom configuration has been set for the cache '" + region + "'.");
+ // Create the CacheManager by loading the configuration
+ DefaultCacheManager customCacheManager =
+ new DefaultCacheManager(configManager.getInputStream(customConfig), false);
+ GlobalConfiguration gc = customCacheManager.getGlobalConfiguration();
+ // Configure JGroups and JMX since it could affect the state of the Global Config
+ configureCacheManager(gc);
+ // Check if a CacheManager with the same GlobalConfiguration exists
+ DefaultCacheManager currentCacheManager = mappingGlobalConfigCacheManager.get(gc);
+ if (currentCacheManager == null)
+ {
+ // No cache manager has been defined so far for this Cache Configuration
+ currentCacheManager = customCacheManager;
+ // Use a different cache manager name to prevent naming conflict
+ gc.fluent().globalJmxStatistics()
+ .cacheManagerName(gc.getCacheManagerName() + "_" + region + "_" + ctx.getName());
+ currentCacheManager.start();
+ // We register this new cache manager
+ mappingGlobalConfigCacheManager.put(gc, customCacheManager);
+ }
+ return currentCacheManager;
}
- return currentCacheManager;
- }
- });
+ });
}
catch (PrivilegedActionException e)
{
@@ -334,7 +336,7 @@
{
throw new Exception(e);
}
- }
+ }
conf = cacheManager.getDefaultConfiguration().clone();
}
else if (config.isDistributed())
@@ -372,16 +374,17 @@
{
try
{
- return SecurityHelper.doPrivilegedExceptionAction(new PrivilegedExceptionAction<Cache<Serializable, Object>>()
- {
- public Cache<Serializable, Object> run() throws Exception
+ return SecurityHelper
+ .doPrivilegedExceptionAction(new PrivilegedExceptionAction<Cache<Serializable, Object>>()
{
- // Define the configuration
- cacheManager.defineConfiguration(region, conf);
- // create and start the cache
- return cacheManager.getCache(region);
- }
- });
+ public Cache<Serializable, Object> run() throws Exception
+ {
+ // Define the configuration
+ cacheManager.defineConfiguration(region, conf);
+ // create and start the cache
+ return cacheManager.getCache(region);
+ }
+ });
}
catch (PrivilegedActionException e)
{
@@ -394,7 +397,7 @@
{
throw new Exception(e);
}
- }
+ }
}
});
}
Modified: kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/distributed/DistributedExoCache.java
===================================================================
--- kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/distributed/DistributedExoCache.java 2011-12-15 17:46:42 UTC (rev 5333)
+++ kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/distributed/DistributedExoCache.java 2011-12-16 09:49:19 UTC (rev 5334)
@@ -82,7 +82,7 @@
*/
private static final Log LOG = ExoLogger
.getLogger("exo.kernel.component.ext.cache.impl.infinispan.v5.DistributedExoCache");
-
+
public static final String CACHE_NAME = "eXoCache";
private final AtomicInteger hits = new AtomicInteger(0);
@@ -92,7 +92,7 @@
private String label;
private String name;
-
+
private final String fullName;
private boolean distributed;
@@ -118,12 +118,12 @@
setLogEnabled(config.isLogEnabled());
setReplicated(config.isRepicated());
}
-
+
AdvancedCache<CacheKey<K>, V> getCache()
{
return cache;
}
-
+
/**
* {@inheritDoc}
*/
@@ -164,7 +164,7 @@
}
lListeners.add(new ListenerContext<K, V>(listener, this));
}
-
+
@SuppressWarnings("rawtypes")
private ConcurrentMap<String, List<ListenerContext>> getOrCreateListeners()
{
@@ -187,7 +187,7 @@
ConcurrentMap<String, List<ListenerContext>> listeners = ALL_LISTENERS.get(cache);
return listeners == null ? null : listeners.get(fullName);
}
-
+
/**
* {@inheritDoc}
*/
@@ -199,7 +199,8 @@
@Override
public Void run()
{
- MapReduceTask<CacheKey<K>, V, String, CacheKey<K>> task = new MapReduceTask<CacheKey<K>, V, String, CacheKey<K>>(cache);
+ MapReduceTask<CacheKey<K>, V, String, CacheKey<K>> task =
+ new MapReduceTask<CacheKey<K>, V, String, CacheKey<K>>(cache);
task.mappedWith(new ClearCacheMapper<K, V>(fullName)).reducedWith(new ClearCacheReducer<String, V, K>());
task.execute();
return null;
@@ -270,7 +271,8 @@
@Override
public Map<String, Integer> run()
{
- MapReduceTask<CacheKey<K>, V, String, Integer> task = new MapReduceTask<CacheKey<K>, V, String, Integer>(cache);
+ MapReduceTask<CacheKey<K>, V, String, Integer> task =
+ new MapReduceTask<CacheKey<K>, V, String, Integer>(cache);
task.mappedWith(new GetSizeMapper<K, V>(fullName)).reducedWith(new GetSizeReducer<String>());
return task.execute();
}
@@ -281,7 +283,7 @@
{
sum += i;
}
- return sum;
+ return sum;
}
/**
@@ -295,8 +297,10 @@
@Override
public Map<String, List<V>> run()
{
- MapReduceTask<CacheKey<K>, V, String, List<V>> task = new MapReduceTask<CacheKey<K>, V, String, List<V>>(cache);
- task.mappedWith(new GetCachedObjectsMapper<K, V>(fullName)).reducedWith(new GetCachedObjectsReducer<String, V>());
+ MapReduceTask<CacheKey<K>, V, String, List<V>> task =
+ new MapReduceTask<CacheKey<K>, V, String, List<V>>(cache);
+ task.mappedWith(new GetCachedObjectsMapper<K, V>(fullName)).reducedWith(
+ new GetCachedObjectsReducer<String, V>());
return task.execute();
}
@@ -467,7 +471,7 @@
{
@Override
- public Map<K, V> run()
+ public Map<K, V> run()
{
MapReduceTask<CacheKey<K>, V, K, V> task = new MapReduceTask<CacheKey<K>, V, K, V>(cache);
task.mappedWith(new GetEntriesMapper<K, V>(fullName)).reducedWith(new GetEntriesReducer<K, V>());
@@ -475,7 +479,7 @@
}
});
-
+
for (K key : map.keySet())
{
if (key == null)
@@ -617,8 +621,8 @@
LOG.warn("Cannot execute the CacheListener properly", e);
}
}
- }
-
+ }
+
@SuppressWarnings({"rawtypes", "unchecked"})
void onGet(CacheKey<K> key, V obj)
{
@@ -814,14 +818,17 @@
{
return cache.getConfiguration().getExpirationWakeUpInterval();
}
-
+
public static class CacheKey<K> implements Externalizable
{
private K key;
-
+
private String fullName;
- public CacheKey() {}
+ public CacheKey()
+ {
+ }
+
public CacheKey(String fullName, K key)
{
this.fullName = fullName;
@@ -835,7 +842,7 @@
{
return key;
}
-
+
/**
* @return the fullName
*/
@@ -843,7 +850,7 @@
{
return fullName;
}
-
+
/**
* @see java.lang.Object#hashCode()
*/
@@ -895,7 +902,7 @@
public String toString()
{
return "CacheKey [fullName=" + fullName + ", key=" + key + "]";
- }
+ }
/**
* @see java.io.Externalizable#writeExternal(java.io.ObjectOutput)
@@ -918,29 +925,31 @@
in.readFully(buf);
fullName = new String(buf, "UTF-8");
key = (K)in.readObject();
- }
+ }
}
-
- private abstract static class AbstractExoCacheMapper<K, V, KOut, VOut> extends AbstractMapper<CacheKey<K>, V, KOut, VOut> implements Externalizable
+
+ private abstract static class AbstractExoCacheMapper<K, V, KOut, VOut> extends
+ AbstractMapper<CacheKey<K>, V, KOut, VOut> implements Externalizable
{
/**
* The full name of the cache instance
*/
private String fullName;
- public AbstractExoCacheMapper() {}
-
+ public AbstractExoCacheMapper()
+ {
+ }
+
public AbstractExoCacheMapper(String fullName)
{
this.fullName = fullName;
}
-
+
/**
* The serial version UID
*/
private static final long serialVersionUID = 7962676854308932222L;
-
/**
* @see org.exoplatform.services.ispn.AbstractMapper#isValid(java.lang.Object)
*/
@@ -968,31 +977,32 @@
byte[] buf = new byte[in.readInt()];
in.readFully(buf);
fullName = new String(buf, "UTF-8");
- }
+ }
}
-
+
public static class GetSizeMapper<K, V> extends AbstractExoCacheMapper<K, V, String, Integer>
{
- public GetSizeMapper() {}
-
+ public GetSizeMapper()
+ {
+ }
+
public GetSizeMapper(String fullName)
{
super(fullName);
}
-
-
+
/**
- * @see org.exoplatform.services.ispn.AbstractMapper#_map(java.lang.Object, java.lang.Object, org.infinispan.distexec.mapreduce.Collector)
+ * {@inheritDoc}
*/
@Override
protected void _map(CacheKey<K> key, V value, Collector<String, Integer> collector)
{
collector.emit("total", Integer.valueOf(1));
}
-
+
}
-
+
public static class GetSizeReducer<K> implements Reducer<K, Integer>
{
@@ -1014,31 +1024,32 @@
sum += i;
}
return sum;
- }
+ }
}
-
+
public static class GetCachedObjectsMapper<K, V> extends AbstractExoCacheMapper<K, V, String, List<V>>
{
- public GetCachedObjectsMapper() {}
-
+ public GetCachedObjectsMapper()
+ {
+ }
+
public GetCachedObjectsMapper(String fullName)
{
super(fullName);
}
-
-
+
/**
- * @see org.exoplatform.services.ispn.AbstractMapper#_map(java.lang.Object, java.lang.Object, org.infinispan.distexec.mapreduce.Collector)
+ * {@inheritDoc}
*/
@Override
protected void _map(CacheKey<K> key, V value, Collector<String, List<V>> collector)
{
collector.emit("values", Collections.singletonList(value));
}
-
- }
-
+
+ }
+
public static class GetCachedObjectsReducer<K, V> implements Reducer<K, List<V>>
{
@@ -1060,31 +1071,32 @@
values.addAll(vals);
}
return values;
- }
+ }
}
-
+
public static class ClearCacheMapper<K, V> extends AbstractExoCacheMapper<K, V, String, CacheKey<K>>
{
- public ClearCacheMapper() {}
-
+ public ClearCacheMapper()
+ {
+ }
+
public ClearCacheMapper(String fullName)
{
super(fullName);
}
-
-
+
/**
- * @see org.exoplatform.services.ispn.AbstractMapper#_map(java.lang.Object, java.lang.Object, org.infinispan.distexec.mapreduce.Collector)
+ * {@inheritDoc}
*/
@Override
protected void _map(CacheKey<K> key, V value, Collector<String, CacheKey<K>> collector)
{
collector.emit("keys", key);
}
-
- }
-
+
+ }
+
public static class ClearCacheReducer<K, V, KIn> implements Reducer<K, CacheKey<KIn>>
{
@@ -1110,7 +1122,8 @@
LOG.error("The top container could not be found");
return null;
}
- DistributedCacheManager dcm = (DistributedCacheManager)container.getComponentInstanceOfType(DistributedCacheManager.class);
+ DistributedCacheManager dcm =
+ (DistributedCacheManager)container.getComponentInstanceOfType(DistributedCacheManager.class);
if (dcm == null)
{
LOG.error("The DistributedCacheManager could not be found at top container level, please configure it.");
@@ -1134,32 +1147,33 @@
}
for (CacheKey<KIn> key : keys)
{
- cache.getAdvancedCache().withFlags(Flag.SKIP_REMOTE_LOOKUP, Flag.FAIL_SILENTLY).remove(key);
+ cache.getAdvancedCache().withFlags(Flag.SKIP_REMOTE_LOOKUP, Flag.FAIL_SILENTLY).remove(key);
}
return null;
- }
+ }
}
-
+
public static class GetEntriesMapper<K, V> extends AbstractExoCacheMapper<K, V, K, V>
{
- public GetEntriesMapper() {}
-
+ public GetEntriesMapper()
+ {
+ }
+
public GetEntriesMapper(String fullName)
{
super(fullName);
}
-
-
+
/**
- * @see org.exoplatform.services.ispn.AbstractMapper#_map(java.lang.Object, java.lang.Object, org.infinispan.distexec.mapreduce.Collector)
+ * {@inheritDoc}
*/
@Override
protected void _map(CacheKey<K> key, V value, Collector<K, V> collector)
{
collector.emit(key.getKey(), value);
- }
+ }
}
-
+
public static class GetEntriesReducer<K, V> implements Reducer<K, V>
{
@@ -1175,6 +1189,6 @@
public V reduce(K reducedKey, Iterator<V> iter)
{
return iter == null || !iter.hasNext() ? null : iter.next();
- }
+ }
}
}
\ No newline at end of file
Modified: kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/generic/GenericExoCacheCreator.java
===================================================================
--- kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/generic/GenericExoCacheCreator.java 2011-12-15 17:46:42 UTC (rev 5333)
+++ kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/cache/impl/infinispan/generic/GenericExoCacheCreator.java 2011-12-16 09:49:19 UTC (rev 5334)
@@ -90,16 +90,16 @@
if (config instanceof GenericExoCacheConfig)
{
final GenericExoCacheConfig gConfig = (GenericExoCacheConfig)config;
- return create(config, cacheConfig, cacheGetter, gConfig.getStrategy(), gConfig.getMaxEntries(), gConfig
- .getLifespan(), gConfig.getMaxIdle() == 0 ? defaultMaxIdle : gConfig.getMaxIdle(), gConfig
- .getWakeUpInterval() == 0 ? defaultWakeUpInterval : gConfig.getWakeUpInterval());
+ return create(config, cacheConfig, cacheGetter, gConfig.getStrategy(), gConfig.getMaxEntries(),
+ gConfig.getLifespan(), gConfig.getMaxIdle() == 0 ? defaultMaxIdle : gConfig.getMaxIdle(),
+ gConfig.getWakeUpInterval() == 0 ? defaultWakeUpInterval : gConfig.getWakeUpInterval());
}
else
{
final long period = config.getLiveTime();
- return create(config, cacheConfig, cacheGetter, config.getImplementation() == null ? defaultStrategy : config
- .getImplementation(), config.getMaxSize(), period > 0 ? period * 1000 : -1, defaultMaxIdle,
- defaultWakeUpInterval);
+ return create(config, cacheConfig, cacheGetter,
+ config.getImplementation() == null ? defaultStrategy : config.getImplementation(), config.getMaxSize(),
+ period > 0 ? period * 1000 : -1, defaultMaxIdle, defaultWakeUpInterval);
}
}
@@ -111,7 +111,9 @@
Callable<Cache<Serializable, Object>> cacheGetter, String strategy, int maxEntries, long lifespan, long maxIdle,
long wakeUpInterval) throws ExoCacheInitException
{
- EvictionStrategy es = strategy == null || strategy.length() == 0 ? null : EvictionStrategy.valueOf(strategy.toUpperCase(Locale.ENGLISH));
+ EvictionStrategy es =
+ strategy == null || strategy.length() == 0 ? null : EvictionStrategy.valueOf(strategy
+ .toUpperCase(Locale.ENGLISH));
if (es == null)
{
es = EvictionStrategy.LRU;
@@ -172,8 +174,8 @@
}
@ManagedName("Lifespan")
- @ManagedDescription("Maximum lifespan of a cache entry, after which the entry is expired cluster-wide." +
- " -1 means the entries never expire.")
+ @ManagedDescription("Maximum lifespan of a cache entry, after which the entry is expired cluster-wide."
+ + " -1 means the entries never expire.")
public long getLiveTime()
{
return cacheConfig.getExpirationLifespan();
@@ -181,8 +183,8 @@
@Managed
@ManagedName("MaxIdle")
- @ManagedDescription("Maximum idle time a cache entry will be maintained in the cache. " +
- "If the idle time is exceeded, the entry will be expired cluster-wide. -1 means the entries never expire.")
+ @ManagedDescription("Maximum idle time a cache entry will be maintained in the cache. "
+ + "If the idle time is exceeded, the entry will be expired cluster-wide. -1 means the entries never expire.")
public long getMaxIdle()
{
return cacheConfig.getExpirationMaxIdle();
@@ -190,8 +192,8 @@
@Managed
@ManagedName("WakeUpInterval")
- @ManagedDescription("Interval between subsequent eviction runs. If you wish to disable the periodic eviction " +
- "process altogether, set wakeupInterval to -1.")
+ @ManagedDescription("Interval between subsequent eviction runs. If you wish to disable the periodic eviction "
+ + "process altogether, set wakeupInterval to -1.")
public long getWakeUpInterval()
{
return cacheConfig.getExpirationWakeUpInterval();
Modified: kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/ispn/AbstractMapper.java
===================================================================
--- kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/ispn/AbstractMapper.java 2011-12-15 17:46:42 UTC (rev 5333)
+++ kernel/trunk/exo.kernel.component.ext.cache.impl.infinispan.v5/src/main/java/org/exoplatform/services/ispn/AbstractMapper.java 2011-12-16 09:49:19 UTC (rev 5334)
@@ -37,7 +37,7 @@
private static final long serialVersionUID = 7118530772747505976L;
/**
- * @see org.infinispan.distexec.mapreduce.Mapper#map(java.lang.Object, java.lang.Object, org.infinispan.distexec.mapreduce.Collector)
+ * {@inheritDoc}
*/
@Override
public void map(KIn key, VIn value, Collector<KOut, VOut> collector)
@@ -49,9 +49,8 @@
}
/**
- * This method is in fact an internal mapping
- *
- * @see org.infinispan.distexec.mapreduce.Mapper#map(java.lang.Object, java.lang.Object, org.infinispan.distexec.mapreduce.Collector)
+ * This method is in fact an internal mapping, it will be called by the map method in
+ * case the given key matches with the context
*/
protected abstract void _map(KIn key, VIn value, Collector<KOut, VOut> collector);
12 years, 5 months