ModeShape

Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
MODE-1249 the maxPathLength property was being picked up from the configuration file

    • -0
    • +83
    /modeshape-integration-tests/src/test/resources/config/configRepositoryForFileSystemPropValidation.xml
MODE-1250 Upgrade Apache POI to 3.7

The MS Office sequencer is using a different value of Apache POI than is being inherited from the Tika library used in the Tika Text Extractor module. This change upgrade the sequencer to also use 3.7, adds several unit and integration tests, and also makes a number of fixes to the way the sequencer works.

All unit and integration tests pass with these changes.

  1. … 5 more files in changeset.
MODE-1250 Upgrade Apache POI to 3.7

The MS Office sequencer is using a different value of Apache POI than is being inherited from the Tika library used in the Tika Text Extractor module. This change upgrade the sequencer to also use 3.7, adds several unit and integration tests, and also makes a number of fixes to the way the sequencer works.

All unit and integration tests pass with these changes.

  1. … 5 more files in changeset.
MODE-1248 Corrected properties passed to authorization providers

The JcrEngine was passing the wrong properties to the AuthoriziationProvider configuration.

A simple change fixes the issue.

All unit and integration tests pass with these changes.

MODE-1248 Corrected properties passed to authorization providers

The JcrEngine was passing the wrong properties to the AuthoriziationProvider configuration.

A simple change fixes the issue.

All unit and integration tests pass with these changes.

MODE-1245 because of the performance of the jpa source (i.e., mysql, oracle, etc.), it could cause a timing issue with loading the cache and finding the node. Therefore, by moving the find to the end of the method and, on the rare case the find isn't found on the first lookup, a loop of maximum 5 tries will be peformed in order to allow the cache time to fill.

MODE-1245 because of the performance of the jpa source (i.e., mysql, oracle, etc.), it could cause a timing issue with loading the cache and finding the node. Therefore, by moving the find to the end of the method and, on the rare case the find isn't found on the first lookup, a loop of maximum 5 tries will be peformed in order to allow the cache time to fill.

MODE-1247 Corrected PropertyType of Binary value

The code was using the wrong PropertyType when setting the Property value to a Binary object.

MODE-1247 Corrected PropertyType of Binary value

The code was using the wrong PropertyType when setting the Property value to a Binary object.

MODE-1289 New approach for storing/caching JCR content

This is the first commit to start the 3.0 effort, which involves a major change to how

the JCR layer stores and caches information. The new approach is based upon Infinispan and uses

Infinispan's cache loaders for persistence, and JSON-like documents (that are in-memory

structures not needing to parsed/written) are used to store information for each node.

There are several new Maven modules:

- modeshape-jcr-redux

- modeshape-schematic

The 'modeshape-jcr-redux' module will eventually replace the 'modeshape-jcr' module once

the implementation is far-enough along. And the 'modeshape-schematic' module will likely

move into the Infinispan project, so that needs to remain separate.

Although it may seem strange and unkempt to have the new JCR implementation in a new module,

doing so means that we can continue to rebase from 'master' (and the 2.7 work) for at least

some time. When the new module becomes complete enough, we'll move it and replace the

existing 'modeshape-jcr' module. It's also convenient to have both the old and new implementations

around in the same codebase.

The build was changed to focus upon the (few) modules that are oriented around the new

implementation. So the following can be used to build the newer codebase:

mvn clean install

However, the build has a new Maven profile called "legacy" that can be used to build the

old modules. We kept this to make sure that any rebasing can be compiled and verified.

For example, to build everyhing, including the new modules and the 2.x-style modules,

use the following command:

mvn clean install -Plegacy

As the newer 'modeshape-jcr-redux' progresses and other modules (e.g., sequencers, web,

jboss, text extractors) are converted to use the new module, they should be moved

from the 'legacy' profile into the main set of modules in the top-level 'pom.xml'

  1. … 433 more files in changeset.
MODE-1246 Removed colons (not allowed on Windows) from worksapce name in WorkspaceConnectorTest

MODE-1246 Removed colons (not allowed on Windows) from worksapce name in WorkspaceConnectorTest

Debugging test case that fails on server.

MODE-1243 Minor correction to Reference Guide.

MODE-1243 Minor correction to Reference Guide.

MODE-1243 JndiRepositoryFactory should support registering engine in JNDI

The JndiRepositoryFactory implementation should support registering the ModeShape engine into JNDI if the repository name is empty or not provided. This change would allow using the factory to configure Glassfish or Tomcat by registering the engine in JNDI so that JCR-2.0-style lookup are possible.

See also MODE-1242 for the change to make RepositoryFactory recognize JNDI URLs to Repository instances, not just ModeShape engine instances.

All unit and integration tests pass with this change.

MODE-1243 JndiRepositoryFactory should support registering engine in JNDI

The JndiRepositoryFactory implementation should support registering the ModeShape engine into JNDI if the repository name is empty or not provided. This change would allow using the factory to configure Glassfish or Tomcat by registering the engine in JNDI so that JCR-2.0-style lookup are possible.

See also MODE-1242 for the change to make RepositoryFactory recognize JNDI URLs to Repository instances, not just ModeShape engine instances.

All unit and integration tests pass with this change.

MODE-1242 RepositoryFactory should support JNDI URL to Repository instance

The JcrRepositoryFactory implementation should support JNDI URLs that point to a Repository instance rather than a ModeShape engine.

When deploying ModeShape to Glassfish or Tomcat, using JndiRepositoryFactory will often be used to register specific Repository instances in JNDI, making the JCR-2.0-style lookup impossible without this change.

All unit and integration tests pass with this change.

MODE-1242 RepositoryFactory should support JNDI URL to Repository instance

The JcrRepositoryFactory implementation should support JNDI URLs that point to a Repository instance rather than a ModeShape engine.

When deploying ModeShape to Glassfish or Tomcat, using JndiRepositoryFactory will often be used to register specific Repository instances in JNDI, making the JCR-2.0-style lookup impossible without this change.

All unit and integration tests pass with this change.

MODE-1241 Corrected duplicate serialization of properties in JPA source

The JPA source was handling UpdatePropertyRequests by iterating through its properties and then removing or

updating the property on the JPA node. Each time a property was modified (removed or added or updated), all

of the nodes properties were serialized. This not only is WAY more work than needed, but it causes a

problem when a file backed Binary value is used (since the first serialization closes the backing stream,

and subsequent serialization attempts to use the closed stream).

This was fixed by simply changing how the UpdatePropertyRequests are handled in MapRequestProcessor to

update and remove all of the appropriate properties in one shot, via a modified 'setProperties' method on

the MapNode, DefaultMapNode, and JpaNode. Because the MapNode interface was changed, several other uses

required modification.

Van's test case was able to duplicate the problem prior to these changes. After these changes, all

unit and integration tests pass.

    • -0
    • +1036
    /modeshape-integration-tests/src/test/resources/test.txt
MODE-1241 Corrected duplicate serialization of properties in JPA source

The JPA source was handling UpdatePropertyRequests by iterating through its properties and then removing or

updating the property on the JPA node. Each time a property was modified (removed or added or updated), all

of the nodes properties were serialized. This not only is WAY more work than needed, but it causes a

problem when a file backed Binary value is used (since the first serialization closes the backing stream,

and subsequent serialization attempts to use the closed stream).

This was fixed by simply changing how the UpdatePropertyRequests are handled in MapRequestProcessor to

update and remove all of the appropriate properties in one shot, via a modified 'setProperties' method on

the MapNode, DefaultMapNode, and JpaNode. Because the MapNode interface was changed, several other uses

required modification.

Van's test case was able to duplicate the problem prior to these changes. After these changes, all

unit and integration tests pass.

    • -0
    • +1036
    /modeshape-integration-tests/src/test/resources/test.txt
MODE-1150 Upgraded to SLF4J 1.6.1

Changed the SLF4J dependency from 1.5.11 to 1.6.1, including all of the documentation and the various web and jboss related modules.

Note that 1.6.x has changed its API slightly, and this breaks some libraries. Therefore, 1.6.x has to be used for all SLF4J-related libraries; one critical issue proved to be the "org.slf4j:jcl-over-slf4j" artifact that apparently is no longer needed (or at least needs to be the same version, and because RESTEasy had an explicit dependency on the then there was some work in excluding it from the web- and jboss- related ModeShape modules.

All unit and integration tests pass with these changes.

    • -6
    • +13
    /web/modeshape-web-jcr-rest/pom.xml
Upgrade Logback to 0.9.29 in Examples

MODE-931 Corrected offset projection behavior

Changed the logic in the JoinRequestProcessor to correctly handle offset projections (along with other projections)

when processing ReadNodeRequests.

A new integration test was added, and all unit and integration tests pass with these changes.

    • -0
    • +44
    /modeshape-integration-tests/src/test/resources/config/configRepositoryForFederatedConnector.xml
MODE-931 Corrected offset projection behavior

Changed the logic in the JoinRequestProcessor to correctly handle offset projections (along with other projections)

when processing ReadNodeRequests.

A new integration test was added, and all unit and integration tests pass with these changes.

    • -0
    • +44
    /modeshape-integration-tests/src/test/resources/config/configRepositoryForFederatedConnector.xml
Corrected DocBook error in query examples section.

Corrected DocBook error in query examples section.

Slightly improved the query examples section.

Slightly improved the query examples section.

MODE-1237 Corrected handling of empty results from subquery.

Corrected how the query execution handles putting the subquery results into the variables, so that even

an empty array of tuples is put into the variables. Without this, when executing and using the subquery results,

the execution logic gets a null for the subquery 'variable' and records an error rather than just using an empty

array.

All unit and integration tests pass with these changes.