- Change the way the CMIS implementation interacts with authentication, logging and transactions
by constructing a service layered in three interceptors:
<property name="cmisTransactions" ref="CMISService_Transactions" />
<property name="cmisExceptions" ref="CMISService_Exceptions" />
<property name="cmisControl" ref="CMISService_Control" />
- CMISService_Transactions:
Retrying transactions are initiated for all operations and we no longer attempt to hold
transactions open across method calls. This optimization is secondary to having full retrying
behaviour, without which the server could throw avoidable exceptions in concurrent environments.
- CMISService_Exceptions:
Performs translation from typical repo exceptions into CMIS exceptions
- CMISService_Control:
Provides details logging of inbound authentication states, arguments, exceptions and return values
To get logging without method arguments (can be verbose):
log4j.logger.org.alfresco.opencmis.AlfrescoCmisServiceInterceptor=DEBUG
To include method call arguments:
log4j.logger.org.alfresco.opencmis.AlfrescoCmisServiceInterceptor=TRACE
Logging will include details of inbound, method-call and outbound thread authentication credentials.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32331 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
27125: Subtasks of ALF-7072: RSOLR 013: Remote API to get ACLs and readers
- ALF-8334: RSOLR 013: Modify ACL schema to record change times
- ALF-8336: RSOLR 013: DB upgrade scripts for ACL changes
- TODO: Query APIs
27128: Added TooManyResultsException as a concurrency detection trigger
- Usually too many results indicates that the DB table key is not as specific as it should be,
but it's AVM that showed this up.
27132: Clean up: javadocs; non-javadocs; uncommented fields; @since tags; etc.
27134: Removed empty directory
27135: Fix for ALF-8333: CMIS query: JOIN on an aspect results in CmisInvalidArgumentException
- incorrect scope used when building orderings
27139: Fixed SORL transaction tracking queries
- Queries were using incompatible boolean comparisons
- Added SOLRDAO to test suite
- Cleaned up code and reformatted code
27141: Minor additions to CannedQuery interface
- get parameter bean
- construct sort details from a list
- ALF-7167: Canned queries
27146: RINF 09 / RINF 10: DB-based paged query for get children (DocLib & CMIS)
- milestone check-in for sprint demo & review (WIP)
- added new FileFolderService (paged) list query (public API is subject to change)
- moved temp JavaScript sorting to Java
- example usage by DocLib (via ScriptNode) and CMIS (via AlfrescoCmisService)
- implemented as demo "canned query" including embedded use of "list" permission interceptor
- ALF-7402 / ALF-7168
27150: RINF 09 / RINF 10: DB-based paged query for get children (DocLib & CMIS)
- missed file (follow-on to r27146)
27158: ALF-7070, ALF-7072: SOLR tracking (node and changeset)
- Pulled non-DAO code into SOLRTrackingComponent
- DAO code and related tests just test basic CRUD
- SOLRTrackingComponent does complex cross-schema manipulation
27159: Fixed line ending and removed svn:eol-style
27160: ALF-8334: RSOLR 013: Fixed SQL Server syntax
27165: RINF 09 / RINF 10: DB-based paged query for get children (DocLib & CMIS)
- fix listDeepFolders (causing Imap*Test to fail)
- all private methods now order files followed by folders
(consistent with existing public APIs such as FileFolderService.search & ScriptNode.childFileFolders*)
- follow-on to r27146
28271: Consolidate diagnostic logging for max perm checks (ALF-8388 + ALF-8419)
- note: this should be a trivial merge to HEAD
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28292 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
26373: WIP: ALF-7339: RSOLR 009: Index track and build from SOLR
- track content, track dates, basic sorting
26388: WIP: ALF-7339: RSOLR 009: Index track and build from SOLR
- basic tracking of d:text and d:mltext (not dual tokenisation and identifier support)
26527: WIP ALF-7339: RSOLR 009: Index track and build from SOLR
- track d:content, d:mltext, d:text
- start of cross locale search and ordering support int the index (not at query time yet)
- no dual tokenisation support yet - currently adding all fields for tokenized BOTH
- .sort needs additional tokenisation support to use a different separator (\u0000 used to indicate locale and split stuff - better toe use {en}woof style with \u0000 split
26822: ALF-8166: RINF 10: treenode.get.js - tweak to use "childFileFolders"
26825: ALF-8133: RINF 10: ScriptNode - update "childByNamePath" to use optimised NodeService.getChildByName
26850: ALF-8133: RINF 10: ScriptNode - update "childByNamePath" to use optimised NodeService.getChildByName
- follow-on to r26825
26862: ALF-8110: RINF 10: doclist.get.js - update "path" filter to use DB-based queries (by default)
- milestone check-in for review and comparison (note: sorting will be pushed down as part of paging support in lower layers)
26872: Updated SOLR dev env
26915: ALF-8224: part 1: encapsulate cmis dictionary for SOLR usage
27017: Javadoc: removed uncommented param
27018: Added 'namePattern' property to NamedObjectRegistry to enforce naming conventions where required
27019: CannedQuery interface and related infrastructure
- Provides basic support for query, sort, filter and page
- CannedQueryFactory allows more complex implementations where required
- Should be enough of a starter for tasks requiring miscellaneous queries
- ALF-7167: Canned queries
27037: WCM QS Needs the Web-Client, so define the dependency to Eclipse
27041: Move WCM-QS test setup to a common base class
27044: Start to conver the WCM QS behaviour from JS to Java
27080: Added comment section for NodeLocator script declarations
27081: General cleanup: Removed non-javadocs, empty javadocs, unused code, etc
27104: Fixed ALF-7476: Typo in output from MMT
27114: ALF-7479: RSOLR 016: Query Handler
ALF-7480: RSOLR 017: SOLR result set
ALF-7481: RSOLR 018: Execute query against SOLR
- First working stack
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28286 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
26012: OpenCMIS server bug fixes: PWC properties update and document version delete
26205: - integrated the CMIS Client API project into the build
- made the local CMIS client use the Alfresco OpenCMIS Extension
- updated OpenCMIS
26300: expose all non-child associations through OpenCMIS and check relationship source and target instead of the relationship type
26356: OpenCMIS update
26378: added more CMIS client examples
26380: added helper methods for CMIS client
26500: - fixed CMIS date aspect property encoding
- fixed CMIS rendition filter handling
26519: OpenCMIS update
26523: fixed CMISConnectionManager
26596: renamed CMIS JavaScript root objects (cmis -> cmisserver, cmisclient -> cmis)
26651: removed the cmis-client-api project and replaced it with a jar in 3rd-party
26652: - corrected CMIS samples
26656: - removed cmis-client-api from build
26658: - removed the last bit of cmis-client-api
26663: - added CMIS samples (browser and upload)
26742: CMIS webscripts samples update
26743: CMIS webscripts samples update
26939: removed duplicate commons-fileupload
26942: updated commons-lang to 2.6
26943: updated OpenCMIS (browser binding is now included in the server framework)
26953: refactored OpenCMIS client integration
26974: Update classpath for Florian - OpenCMIS browser bindings are now rolled into the main jar, no need for their own one
26975: removed outdated CMIS browser binding demo page
27048: port of the Spring Surf CMIS browser plus a few new features (create folder, create document, delete object)
27077: bug fix: CMIS id for associations
27079: OpenCMIS update
27085: added check if CMIS is supported
27086: OpenCMIS client bindings update (force JAX-WS RI)
27138: clean up
27764: CMIS default connection handling
27879: OpenCMIS client: moved server definitions to separate config file
27880: OpenCMIS client: removed test repositories from configuration
27918: changed CMIS server configuration tag name to match Spring Surf configuration
27920: enabled relationships in CMIS browser
27924: Updated Spring Surf and added the Spring Surf CMIS framework
[Merge note: Kept most recent HEAD jars where conflicts occured]
27926: Updated Spring Surf source jars
[Merge note: Kept most recent HEAD jars where conflicts occured]
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28219 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261