Clone Tools
  • last updated a few minutes ago
Constraints: committers
Constraints: files
Constraints: dates
MODE-2615 Fixes the handling of multi-byte UTF-8 characters by the BSON reader

  1. … 1 more file in changeset.
MODE-2527 Renames the schematic package to org.modeshape and removes all ISPN related code.

  1. … 310 more files in changeset.
MODE-2430 Fixed BsonDataInput stream truncating strings.

  1. … 3 more files in changeset.
MODE-2081 Changed the license for ModeShape code to ASL 2.0.

  1. … 117 more files in changeset.
MODE-2074 Fixed the usage of CharSet decoders/encoders by the BsonDataInput/Output classes. Also, fixed the algorithm which reads Bson strings, in the case when those strings are larger than the default buffer size.

  1. … 2 more files in changeset.
MODE-1575 - Fixed deserialization of schematic Binary values

  1. … 2 more files in changeset.
MODE-1289 Implemented versioning and import/export

Created the JcrVersionManager that contained most of the logic from the legacy 'modeshape-jcr' module.

Much of that logic could be moved as is, but any of it that directly used the graph API or batches

had to be changed to use the new CachedNode API. The latter should be significantly more efficient

than the former, since the former was forcing at least one refresh (and sometimes multiple refreshes)

of the version history, while the CachedNode API doesn't require any refreshes.

Added support for importing and exporting repository content using system and document views, as

defined by the specification. Migrated the unit tests for the import/export functionality.

Note that unit tests for the versioning have not yet been migrated, but will be in forthcoming commits.

  1. … 105 more files in changeset.
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'

    • -0
    • +314
    • -0
    • +469
  1. … 444 more files in changeset.