You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Oliver Zeigermann <ol...@gmail.com> on 2004/11/05 23:35:06 UTC

What is a workspace?

I have problems understanding what a workspace is. I haven (really!)
read the spec, but still have no real idea. Is there anything
comparable I might know or an example that could illustrate it to me?

Thanks in advance,

Oliver

Re: What is a workspace?

Posted by David Nuescheler <da...@gmail.com>.
hi olli,

thanks for your question, i think that questions like that are probably
answered best by the spec itself.
the version of the spec that used for public review might be a bit
out of date, however it could still help answering those fundamental
questions:
http://jcp.org/aboutJava/communityprocess/review/jsr170/index.html

> Thanks for the answers, but this confuses me more than it helps. Could
> you give any example where there would be more than one workspace. How
> do I create one then? How would I discard one?
administrational tasks of the repository have purposely been excluded
from the spec. so things like modifying nodetypedefinitions or 
workspaces are not part of jsr-170. as for how to do that with
jackrabbit, you can either do that by using the respective api
calls or just creating a directory under "workspaces" and copy
the workspace.xml into the newly created folder. 

> I understand versions, I understand check in/out, I know CVS. I do not
> see how the jsr170 workspace usage would match that of e.g. DeltaV.
> Does it?
well, it does. since geoff clemm was also one of the driving
forces behind the jsr-170 versioning chapter, i am sure it is
safe to say that things between jsr-147, deltav and jsr-170
are as mappable as possible. but i think the spec itself 
is probably the best source for clarification in that respect.

regards,
david
----------------------------------------------------------------------
standardize your content-repository !
                               http://www.jcp.org/en/jsr/detail?id=170
---------------------------------------< david.nuescheler@day.com >---

This message is a private communication. If you are not the intended
recipient, please do not read, copy, or use it, and do not disclose it
to others. Please notify the sender of the delivery error by replying
to this message, and then delete it from your system. Thank you.

The sender does not assume any liability for timely, trouble free,
complete, virus free, secure, error free or uninterrupted arrival of
this e-mail. For verification please request a hard copy version.


mailto:david.nuescheler@day.com
http://www.day.com

David Nuescheler
Chief Technology Officer
Day Software AG
Barfuesserplatz 6 / Postfach
4001 Basel
Switzerland

T  41 61 226 98 98
F  41 61 226 98 97

Re: What is a workspace?

Posted by Oliver Zeigermann <ol...@gmail.com>.
Thanks for the answers, but this confuses me more than it helps. Could
you give any example where there would be more than one workspace. How
do I create one then? How would I discard one?

I understand versions, I understand check in/out, I know CVS. I do not
see how the jsr170 workspace usage would match that of e.g. DeltaV.
Does it?

Oliver 


On Sat, 6 Nov 2004 01:36:55 +0100, Peeter Piegaze
<pe...@gmail.com> wrote:
> On Fri, 5 Nov 2004 15:28:41 -0800, Roy T. Fielding <fi...@gbiv.com> wrote:
> 
> 
> > On Nov 5, 2004, at 2:35 PM, Oliver Zeigermann wrote:
> > > I have problems understanding what a workspace is. I haven (really!)
> > > read the spec, but still have no real idea. Is there anything
> > > comparable I might know or an example that could illustrate it to me?
> >
> > Workspace is the common term in configuration management systems
> > for a checked-out set of nodes that is resident on the server
> > but not yet committed, just like CVS calls your local copy of
> > the source code a workspace.  Think of it as a hidden branch of
> > the tree that is private to your application until it is saved.
> >
> > ....Roy
> 
> One difference is that in jackrabbit/jsr170 the workspace really *is*
> the tree. Its not a "hidden branch", it is the primary storage.
> 
> A repository is composed of one or more workspaces, each of which is a
> rooted tree of nodes. This set of workspaces is server-resident and
> comprises the guts of the repo.
> 
> A workspace is intended to be accessed and modified by multiple
> sessions (which may be, for example, users). Any of these multiple
> sessions may "save" changes to the workspace (assuming access rights
> blah blah etc.).
> 
> Unlike in, say, CVS, to "save" a node to persistent storage does not
> automatically create a new version of that node.
> 
> Creating a version (called by us "check-in", as distinct from the
> earlier "save") is a separate step. These versions are stored in a
> separate area of the repo (version storage).
> 
> Because jsr170 is conceived primarly as a content repository, as
> opposed to config management system, the versioning aspect is more of
> an "extra feature", hence some of the terminology from something like
> CVS is not directly applicable, and this, I know can be somewhat
> confusing.
> 
> Anyway, hope this helps.
> 
> Cheers,
> Peeter Piegaze
> Author, JSR-170 Specification
> Day Software AG
> Basel, Switzerland
>

Re: What is a workspace?

Posted by Peeter Piegaze <pe...@gmail.com>.
On Fri, 5 Nov 2004 15:28:41 -0800, Roy T. Fielding <fi...@gbiv.com> wrote:
> On Nov 5, 2004, at 2:35 PM, Oliver Zeigermann wrote:
> > I have problems understanding what a workspace is. I haven (really!)
> > read the spec, but still have no real idea. Is there anything
> > comparable I might know or an example that could illustrate it to me?
> 
> Workspace is the common term in configuration management systems
> for a checked-out set of nodes that is resident on the server
> but not yet committed, just like CVS calls your local copy of
> the source code a workspace.  Think of it as a hidden branch of
> the tree that is private to your application until it is saved.
> 
> ....Roy

One difference is that in jackrabbit/jsr170 the workspace really *is*
the tree. Its not a "hidden branch", it is the primary storage.

A repository is composed of one or more workspaces, each of which is a
rooted tree of nodes. This set of workspaces is server-resident and
comprises the guts of the repo.

A workspace is intended to be accessed and modified by multiple
sessions (which may be, for example, users). Any of these multiple
sessions may "save" changes to the workspace (assuming access rights
blah blah etc.).

Unlike in, say, CVS, to "save" a node to persistent storage does not
automatically create a new version of that node.

Creating a version (called by us "check-in", as distinct from the
earlier "save") is a separate step. These versions are stored in a
separate area of the repo (version storage).

Because jsr170 is conceived primarly as a content repository, as
opposed to config management system, the versioning aspect is more of
an "extra feature", hence some of the terminology from something like
CVS is not directly applicable, and this, I know can be somewhat
confusing.

Anyway, hope this helps.

Cheers,
Peeter Piegaze
Author, JSR-170 Specification 
Day Software AG
Basel, Switzerland

Re: What is a workspace?

Posted by "Roy T. Fielding" <fi...@gbiv.com>.
On Nov 5, 2004, at 2:35 PM, Oliver Zeigermann wrote:
> I have problems understanding what a workspace is. I haven (really!)
> read the spec, but still have no real idea. Is there anything
> comparable I might know or an example that could illustrate it to me?

Workspace is the common term in configuration management systems
for a checked-out set of nodes that is resident on the server
but not yet committed, just like CVS calls your local copy of
the source code a workspace.  Think of it as a hidden branch of
the tree that is private to your application until it is saved.

....Roy