hi

a couple of issues have been addressed in the jcr-server
contribution.
JCR-249 caused major changes in the o.a.j.server.io package
which are discussed in the corresponding jira issue.

please note also a modification in the simple-servlet suggested
by felix (see below).


JCR-249 (http://issues.apache.org/jira/browse/JCR-249)
---------------------------------------------------------

changes:
- command chains have been replaced inside the server project
  > removal of all command, commandchain classes
  > removal of catalog.xml
  > references to command-chains in other classes have been
    removed or replaces.
- the new import/export framework is described in JCR-249
- while replacing the command-chains i modified some IO
  related things in the webdav-project, too.
  see below for details.


JCR-253 (http://issues.apache.org/jira/browse/JCR-253)
---------------------------------------------------------

fixed by tobi as suggested.


Removing basic auth handling from RepositoryAccessServlet
---------------------------------------------------------

fixed by tobi

getCredentialsFromHeader has been removed from the RAServlet and
added to a new BasicCredentialsProvider class.
The corresponding servlet init-param has been added to the
SimpleWebdavServlet and the JcrServerServlet.


changes in webdav library (consequence of JCR 249)
----------------------------------------------------------

- o.a.j.webdav.io contains now interfaces for general
  input/output and 2 implementing classes that are
  used in the AbstractWebdavServlet.

- o.a.j.webdav.DavResource now is responsible for
  writing its properties/content to the OutputContext.
  therefore the getStream() methods has been replace.
  The spoolResource-method in the abstract-dav-servlet
  does not care about individual headers and the spooling
  any more, but delegates this to the resources.

- o.a.j.webdav.DavResource.addMember(DavResource) has
  been removed. There remains only one single addMember
  method that takes a resource and an InputContext.
  thus, a MKCOL that does not have a request body will
  provide an InputContext without a stream but allows
  to forward the request headers to the dav-resource.


additional changes in the simple-server
----------------------------------------------------------

- NodeResource became obsolute (JCR-249) and has been
  removed.

- DavResourceImpl:
  > protected methods for getting a new Import/ExportContext
    in order to respond to GET/HEAD and PUT/MKCOL, respectively.
    the default context implementations delete the tmpfiles
    created for import/export as soon as the context is
    released (avoiding deleteOnExit).
  > initProperties retrieves the dav-properties without
    the data being spooled.
  > the check for filtered-node in the constructor has
    been removed (problems with days crx)

- SimpleServlet:
  felix suggested to always add the workspace name to resource
  URIs. the default locatorfactory in the simple servlet was
  replaced for this reason.
  NOTE: since there is not extra fake-root resource, the webdav
  connection now needs to include the workspace name. this
  corresponds to a repository-login that provides a workspace
  name. before it was not possible to connect to a specific
  workspace.


javadoc, todo, README
----------------------------------------------------------

- removed day-header in LoggingServlet
- and tobi corrected some of my javadoc typos.
- the readme and the todo.txt were a little outdated.


regards
angela




Reply via email to