Commit Graph

238 Commits

Author SHA1 Message Date
Britt Park
90d171b913 Moved dangerous helper methods out of AVMService.
Reworked handling of path lookup failures to not throw exceptions
internally, to improve performance of certain layered directory
operations.  Unfortunately there remains at least one scenario,
handling of bulk loads, and promotions of deeply nested directories in
layered contexts, in which performance is considerably less than
ideal. 

Made AVMService.createBranch() and AVMSyncService.update() perform
implicit snapshots of source tree's stores before proceeding.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3812 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-17 20:05:27 +00:00
Kevin Roast
be34b01c07 . Checkpoint of WCM UI
- First pass of the Staging/User Sandboxes view for an AVM website folder
   - Basic layout and component structure only, nothing works yet
   - Panel for each user sandbox, collapsing area for change files (nothing in it yet)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3783 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-13 16:44:01 +00:00
Britt Park
a06fc74aef The outside hooks for AVMSyncService are in place and the implementation
of the simplest method, resetLayer is done.
Also fixed goofy merge induced bug in DbNodeServiceImpl.
Can we make merging a punishment for naughty Alfrescans?


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3778 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-13 05:45:24 +00:00
Britt Park
39a18df7f2 Yet another merge from head to WCM-DEV2.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3774 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-12 18:55:07 +00:00
Kevin Roast
e459c188f6 . Checkpoint of WCM UI
- Create Website Wizard now creates the appropriate structure of stores and layers for a website
   - A website has a sandbox comprising of a staging area and a preview area layered ontop of that
   - Each user has a sandbox comprising of a main area (layered ontop of the staging area) and a preview area layered ontop of that
 - Added store level meta-data to tag the website stores with appropriate DNS names and markers for sandbox-id and sandbox types
. AVM "reallybad.jsp" demo page renamed to avm.jsp with a few UI tweaks for easier command input etc.
 - removed the terrible.html as no longer required - just launch avm.jsp directly

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3772 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-12 17:23:38 +00:00
Britt Park
be6a222554 Extended the content model to include relevant avm specific types.
cm:avmcontent and cm:avmfolder are 'abstract'.  cm:avmplaincontent is derived
from cm:avmcontent and is just a plain file. cm:avmlayeredcontent is derived
from cm:avmcontent and is (surprise) a layered file and has a d:noderef mandatory
property, cm:avmfileindirection, that is the (possibly non-existent) file that
the layered file is transparent to.  cm:avmplainfolder is derived from 
cm:avmfolder and is just a plain directory.  cm:avmlayeredfolder is a layered
directory and has a property, cm:avmdirinderection, that is the (possibly
non-existent) directory that the layered directory is transparent to.
The ContentModel QName constants are.
TYPE_AVM_PLAIN_FOLDER
TYPE_AVM_LAYERED_FOLDER
TYPE_AVM_PLAIN_CONTENT
TYPE_AVM_LAYERED_CONTENT
PROP_AVM_DIR_INDIRECTION
PROP_AVM_FILE_INDIRECTION
One can now create all four flavors of avm nodes through 
AVMNodeService.createNode().  The advantage of using these over the
corresponding AVMService methods is that since (for now) AVMService, is
permission and indexing unaware.
Backed out cm:mounted aspect and dispatching code in DbNodeServiceImpl.  
(Dave and Derek, you may now relax) as we are implementing the UI with
AVM dedicated screens.
Finally, beginning interface for AVM node tree synchronization and comparison.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3764 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-12 03:16:10 +00:00
Kevin Roast
979ca93112 . Checkpoint of WCM ui work (nothing to see here, move along please, move along)
- "Websites" folder created under root of Company Home during bootstrap
 - Bootstrap properties and getter helper added to import-export-context & web-client
 - Beginnings of the Create Website wizard
 - Action definition added for Create Website action
 - Beginings of the model for avm webfolders and associated sub-structures

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3763 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-11 16:57:01 +00:00
Britt Park
8a95b09b98 Added new AVM node type DeletedNode (aka, ghost, tombstone), a marker node for a
node that has been deleted in a version. This makes tree comparisons easier by
resolving the cases in which one wants to know whether a deletions is more or less 
recent than another version of a node.  Along the way got rid of DeletedChild and 
friends including a table in the schema, since DeletedNode takes on all the work
that it performed.
Deleted two illegally named files in Virgin content.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3748 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-10 17:20:35 +00:00
Britt Park
07bfd7c60c More configuration errors fixed. I'm guessing I haven't seen the end of them.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3737 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-08 21:30:12 +00:00
Britt Park
08ecce31b6 Added types cm:avmcontent (derived from cm:content) TYPE_AVM_CONTENT and
cm:avmfolder (derived from cm:folder) TYPE_AVM_FOLDER as handles for UI.
Fixed configuration goofs I introduced recently that caused Node Browsing
to barf on content nodes. 


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3725 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-08 04:47:21 +00:00
Britt Park
9c8ae2b7c4 Changed configuration to index nodes in AVM stores. Indexing only occurs
for avm nodes created/manipulated via NodeService.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3714 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-07 16:57:32 +00:00
Britt Park
17284e4dae More touch ups to AVM permissions stuff. ACLs are properly copied on write.
OrphanReaper cleans up ACLs.  Tests of same.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3710 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-06 20:53:38 +00:00
Britt Park
920c487867 Cleanup of ACL reading/writing for PermissionsDaoComponent. All access is
through the AccessControlListDAO interface.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3700 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-06 00:41:41 +00:00
Britt Park
fff09ab01d Aspects on AVM nodes are copied on write. Also missing configuration change
from last checkin.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3699 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-05 18:22:40 +00:00
Britt Park
1fd96d13d5 This changes PermissionsDaoComponentImpl to work with NodeRefs instead
of Nodes so that Permissions can be used with AVM nodes.  It needs
to be factored a little bit differently, so consider this a WIP.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3698 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-05 14:17:34 +00:00
Britt Park
c03b967e71 Got rid of the NewInAVMStore table by folding it into the AVMNode
table.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3665 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-03 22:39:35 +00:00
Britt Park
0b58cca272 Removed RetryingTransactionHelper and friends. AVMService's transactional
behavior is now declaratively specified.  


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3662 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-03 06:30:05 +00:00
Britt Park
7c70be1811 Stuck AVMService into ServiceRegistry. Started wrapping AVMService
with appropriate advice.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3661 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-02 23:18:38 +00:00
Britt Park
820da6ecab Merge from HEAD to WCM-DEV2.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3659 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-02 18:19:00 +00:00
Britt Park
db3c29b45e Moved stuff around to be more Alfresco standard.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3658 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-02 00:45:48 +00:00
Britt Park
5136c45e34 Taught AVM to be aware of the current user for tracking creator,
modifier, etc. AVM nodes can have ACLs. Not used for anything yet.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3657 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-01 20:56:11 +00:00
Britt Park
8a8511c605 Added aspect cm:mounted, and dispatchers in DbNodeServiceImpl to allow
cross repository type browsing.  The Node Browser seems to work 
happily with this.  The UI can traverse a mounpoint but errors out
when trying to browse further down into an AVM store, because its
being naughty and peeking into NodeRefs.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3649 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-31 22:12:36 +00:00
Britt Park
484dda3b92 This makes AVMNodeService policy aware.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3619 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-28 19:12:26 +00:00
Britt Park
8031cc6574 Big honkin' merge from head. Sheesh!
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3617 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-27 01:01:30 +00:00
Britt Park
e2c66899cc Make sure that ContentStoreCleaner doesn't clean up in-use
AVM content. Doh!


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3612 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-25 14:00:32 +00:00
Britt Park
0606fa3ab6 AVM Nodes are (theoretically) mostly aspect ready. AVMNodeService is
now derived from AbstractNodeServiceImpl to make policy awareness easier.
Moved addDefaultPropertyValues from DbNodeServiceImpl to 
AbstractNodeServiceImpl so AVMNodeService can use it.  A fix for an
NPE that showed up in stress test.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3603 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-24 18:36:59 +00:00
Britt Park
d67b926589 Marking of AVM Nodes with Aspects works (according to some minimal tests).
Schema has been updated, DAO written, garbage collection updated to clean
out aspects.  Also some seemingly unnecessary changes in visibility 
declarations to deal with strange intermittent Spring wiring failures in 
one of my tests.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3560 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-22 01:22:01 +00:00
Britt Park
26877f6105 The Node Browser in the UI can now navigate AVM stores.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3553 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-21 14:05:52 +00:00
Britt Park
19544c2574 Point checkin that suppresses spurious Cycle exception.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3530 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-16 21:53:59 +00:00
Britt Park
b42bda5b59 For a small but representative subset of the API the remote AVM
interface works.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3502 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-14 19:15:27 +00:00
Britt Park
1df576890c AVM remote interface wiring. Also missed file from last checkin.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3498 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-14 16:26:34 +00:00
Britt Park
06df2021c8 This changes the AVM service to use ContentService for storage. This gives us,
in theory, AVM working underneath (more or less) NodeService and ContentService.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3481 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-10 21:50:34 +00:00
Britt Park
4ab5a046c2 Cleaned up a handful of uglinesses in moving AVM configuration into
Alfresco app configuration, mostly related to getting testing to
work smoothly.  Also reworked OrphanReaper to be better behaved
and nominally more efficient.  


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3419 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-27 00:47:56 +00:00
Britt Park
6692c7a979 Merged AVMService into the rest of Alfresco. It all comes up in
the same ApplicationContext. Some adjustments to tests needed,
but everything is passing.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3414 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-26 13:47:40 +00:00
Britt Park
f7d9d83036 Merge from HEAD into WCM-DEV2. Also fixes build breakage in
jndi-client and catalina-virtual that I introduced earlier. 


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3393 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-24 18:27:41 +00:00
Britt Park
e5214a5d42 Renamed RetryingTransaction to RetryingTransactionHelper, HibernateRetryingTransaction
to HibernateRetryingTransactionHelper.  Changed propagation mode of AVM transactions to
PROPAGATION_REQUIRED and tweaked to not retry in a transaction that wasn't started
locally.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3389 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-24 15:26:27 +00:00
Britt Park
beb44ec6ae Big rearrangement of package structure to allow as many classes
and interfaces to be package local as possible.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3381 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-23 14:59:28 +00:00
Britt Park
ff042f1988 Made AVMRepository Springable. Modularized Spring configuration a bit.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3380 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-22 20:17:51 +00:00
Britt Park
1125926c90 Changed signature of AVMRepository.getAVMStoreByName() to get rid of
unused and misleading parameter.  Fixed PlainFileNodeImpl copy from 
LayeredFileNode constructor so that properties will be correctly copied.
Switched out the GPL mysql driver that I had been inadvertantly using.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3378 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-22 17:35:56 +00:00
Britt Park
24e1b31567 Added QName indexed properties to AVMRepositories.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3376 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-21 21:54:26 +00:00
Britt Park
e2eec832f1 Added QName indexed Properties to AVMNodes.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3357 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-19 22:15:09 +00:00
Britt Park
fff2fb6b05 A rename and a minor code rearrangement.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3333 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-18 00:58:23 +00:00
Britt Park
60cdda3f13 Renamed a few things. What used to be SuperRepository (kind of meaning free name
wasn't it) is now AVMRepository.  What used to be Repository is now AVMStore as it
more closely matches what is meant by a store in Alfresco.  Many adjustments
in ancillary class names, references, and comments followed.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3329 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-16 18:19:59 +00:00
Britt Park
6ac87efa5a Moved the tracking of newly introduced nodes into its own table. Simplifies things a bit.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3320 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-13 15:48:10 +00:00
Britt Park
fae76d7896 Merge from head.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3314 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-13 07:06:30 +00:00
Britt Park
d0b5b14af1 Refactored persistence for AVM. I'm guessing because I dropped a number of
unnecessary flushes seems about 20% snappier.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3296 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-11 09:32:13 +00:00
Britt Park
cdef918e07 Hibernate parts of AVM now based on Spring PlatformTransactionManager
abstraction.  Configurations to match.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3286 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-06 02:08:21 +00:00
Britt Park
c54b07f607 Some minor configuration tweaks.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3284 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-05 16:16:09 +00:00
Britt Park
b05422171a Some more modification to make things more Spring friendly. Updated
Spring configurations to match.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3278 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-04 14:34:50 +00:00
Britt Park
92a7348a43 Wasn't updating mod time in appropriate places. Fixed that. Rewrote Issuer
to be less stupid.  Minor fix to the pathetically silly reallybad.jsp.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3276 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-02 21:25:24 +00:00