Britt Park
c45bb470ba
Added utility method to get a path for an AVM node as quickly as possible. Switched history
...
viewing to use it.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4944 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2007-01-26 16:34:36 +00:00
Britt Park
0adccaeca8
Made revert to version behave better. Now when a node is reverted a clone of
...
the version being reverted to is created. This clone has the previous head version
as its ancestor and a wcm:reverted aspect applied. wcm:reverted contains
wcm:revertedid, the node id that the reversion is a clone of. Revert to version is
now a simple call to a new AVMService method, revert().
Propagated this to the remote API.
Modified the the AVMRevertToVersionAction to use this mechanism. Though really the
action isn't really needed now.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4824 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2007-01-14 00:56:55 +00:00
Britt Park
0a76193084
AVM nodes get a useful version id.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4727 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2007-01-04 14:59:29 +00:00
Britt Park
a9461fe53b
I think this fixes the race under load that I discovered. More testing is
...
needed. Once again this will require a new database as I've changed the AVM schema
back.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4693 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-23 21:33:08 +00:00
Britt Park
7f8c678bd5
Adjusted AVMCrawlTestPP to be more stringent now that we have retryin
...
transactions.
History is noww correctly maintained for cases of deletes followed by renames
or creates.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4587 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-12 21:09:07 +00:00
Britt Park
c012545bfa
Callback mechanism for notifying CIFS when Stores are
...
created or purged, and when versions are created or purged.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4541 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-07 01:02:40 +00:00
Britt Park
331bba1249
Cleaned up and generalized purported EnhancerByCGLIB workaround.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4523 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-05 16:28:58 +00:00
Britt Park
e8b37eb880
Attempt to at working around CGLIB bug.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4517 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-05 03:37:39 +00:00
Britt Park
03a93a3cf7
Added a method to AVMService and its dependent services to get an InputStream
...
directly from a node descriptor. It's a minor optimization for a few use
scenarios. It's also convenient for accessing content of historical file
versions directly.
Another CLT, to list the versions of a store.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4496 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-03 03:55:49 +00:00
Britt Park
b19c40939f
Added a primitive but seemingly effective store name cache. Switching the
...
stores table to a synthetic primary key caused a 15% performance drop. This gets
that performance back, plus or minus.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4493 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-02 20:53:33 +00:00
Britt Park
b8ff632f15
AVM stores are renamable. Beware. Database schema has changed since I needed to
...
introduce a synthetic primary key into the stores table.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4492 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-12-02 20:03:20 +00:00
Britt Park
ef669bec2a
Odds and ends. Started infrastructure for AVM command line utilities.
...
Loosened cache invalidation for write operations so that layered/write
lookups are not discarded. Changed direct buffer copies to use
System.arraycopy.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4447 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-27 14:42:46 +00:00
Britt Park
d12551d5cc
Lookup caching is working. It's fairly heavy handed in its invalidation
...
strategy, but seems to give a 10-20% performance boost.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4426 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-22 16:14:22 +00:00
Britt Park
4287b291d4
Added getContentReader and createContentWriter to AVMService. Also added convenience
...
getDirectoryListingArray() calls which return listings as arrays instead of Maps.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4377 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-16 19:53:42 +00:00
Britt Park
2cab072bc1
Provided a getLatestSnapshotID() for AVMService. It returns the latest extant version of
...
a store.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4364 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-15 15:30:50 +00:00
Britt Park
fa0bb97dc1
Rejiggered ChildEntry and its mapping, for considerably better performance. Actually
...
it was kind of a Doh! moment.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4336 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-12 13:53:29 +00:00
Britt Park
f501073de5
Added two new fields to VersionRoot (the version record), a short description,
...
and a long description. Adjusted signature of createSnapshot(), and update()
to match, and thus actions and tests that needed to be fixed.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4290 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-05 23:41:55 +00:00
Britt Park
267e4d06b0
A more scalable implementation of getCommonAncestor. Performance is roughly proportional
...
to the distance of the common ancestor from the compared nodes.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4265 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-10-31 15:17:09 +00:00
Britt Park
0774219b75
A real, if brute force, fix for cycle detection during lookups.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4106 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-10-12 18:10:17 +00:00
Britt Park
21941d7385
Turned off, for now, because the current implementation is decidedly borked,
...
heuristic cycle checking. This was causing the css not showing up in initial
previews of web pages, followed by showing up on one or more refreshes. I am a
prat. The evidence is irrefutable.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4084 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-10-09 21:49:07 +00:00
Britt Park
20bff37610
Purged two vestigial arguments from DirectoryNode.lookupChild() interface.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3981 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-30 14:49:57 +00:00
Britt Park
5e36db4b45
Reorganized AVMContext convenience class for accessing various singletons
...
into AVMDAOs for accessing AVM DAO singletons and RawServices for accessing
uninstrumented versions of some services.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3980 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-30 03:46:23 +00:00
Britt Park
752e46e0f1
In certain circumstances update was not capturing aspects, properties, and
...
ACLs. This fixes that.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3979 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-29 21:29:45 +00:00
Britt Park
0b1accf9f9
Added variants to getPaths, which get all HEAD paths for
...
a node or all HEAD paths for a node in a given store.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3977 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-29 16:12:26 +00:00
Britt Park
8e56ad390c
Added missing callbacks to AVMNodeService. This makes things slow.
...
Have to do something about that.
Added getPaths call to AVMService. Retrieves all possible paths to a node.
Need to do timing tests.
I believe, the 6th version of a Pair template class. This one's public and
perhaps when we have time we could use it in place of all the inner class
implementations.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3964 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-28 20:19:48 +00:00
Britt Park
76bd8a310d
A fix for some incorrect behaviors in AVMSyncService.flatten() brought
...
on by some incorrect cacheing and the lack of some necessary flushes.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3910 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-24 22:43:54 +00:00
Britt Park
4707762604
Simple promote action (moves changed content from sandbox to sandbox).
...
Fixed various pathetic flaws in SimpleAVMSubmitAction.
AVMSyncService.flatten() silently ignores harmless do nothing calls.
Cleared up small episode of Eclipse Add Import Tourette's. ;)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3900 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-22 22:34:20 +00:00
Britt Park
eb4a1429b9
Added logger to AVMRepository, by the way. Web-site summary now shows
...
the correct number of users.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3882 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-22 05:08:33 +00:00
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
Britt Park
f5e509c18b
A couple of more special tricks to get better performance out of
...
AVMSyncService.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3811 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-16 16:11:21 +00:00
Britt Park
14ebe1726f
Added two more special purpose calls, to improve flatten performance from
...
rotten to ok.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3809 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-15 21:26:26 +00:00
Britt Park
dfe49bf51b
Introduces a new variant on the link() call that makes the update() call
...
way faster in the worst case, i.e. tolerable so far.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3808 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-15 20:00:54 +00:00
Britt Park
fc2bfb0315
Checkpoint of AVMSyncService support changes. Fix of AVMNodeConverter not liking
...
trailing '/'s.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3803 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-15 14:03:22 +00:00
Britt Park
7fd363c599
Added link call to AVMService. It essentially creates a hard link
...
without the bad aftertaste. It's needed for the AVMSyncService's
update method which will move new versions of nodes from one AVM
tree to another. Also a checkpoint for AVMSyncService. One can safely
call compare and get back an empty List of AVMDifferences.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3784 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-13 19:26:11 +00:00
Britt Park
37b5003ae4
Added API methods to query AVM store properties by key pattern.
...
Cleaned up some warnings in AVMInterpreter.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3765 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-12 05:43:36 +00:00
Britt Park
5e0378deb2
This exposes DeletedNodes through AVMService via calls for lookup
...
and directory listing that take an includeLinks flag. Original calls
(w/o a flag) should have unchanged behavior.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3752 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-09-11 00:00:57 +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
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
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
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
0135279f47
This fixes spurious cycle exception bug. AVMContext is public to
...
allow reallybad.jsp to work so that we have a way of browsing and
modifying content in the AVM repository in a running Alfresco
instance, until I get AVMNodeService fully hooked up.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3541 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-17 18:30:34 +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
c8ddf97f62
Server side implementation of AVM remote interface. Made Serializable
...
several classes that needed to be.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3489 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-08-14 02:34:39 +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
9455745ba8
Added deleteNodeProperties to AVMService interface. Fits in well with NodeService
...
behavior. Outline of implementation of AVMNodeService, an AVM based
implementationof NodeService.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3438 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-31 16:38:39 +00:00
Britt Park
55c4d49fbf
Added getDirectoryListingDirect() and getDeleted() to AVMService
...
interface. These return respectively those nodes directly
contained by a directory and the names of those nodes that
have been deleted in a directory.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3383 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-07-24 00:35:18 +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