Public API Changes

Document created by resplin Employee on Jun 6, 2015
Version 1Show Document
  • View in full screen mode

Obsolete Pages{{Obsolete}}

The official documentation is at: http://docs.alfresco.com



From time to time the public API for Alfresco needs to change.   This page notes recent changes.


Project Swift 3.5 to 4.0


Project Team 3.4 to 3.5


Project Cheetah 3.3 to 3.4


Java API


  • WCM Deployment

Interface DeploymentTarget
The send method gains an additional boolean parameter.   Rework your custom deployment targets to accept the new method signature.


  • Core Service : FileFolderService
    • deep search methods deprecated.   If using for deep search rework code.
    • listDeepFolders added.
  • Core Service : TransferService
    • TransferDefinition isSync property added.   No code change required.
    • TransferDefinition isReadOnly property added.   No code change required.
  • Core Service : ReplicationService - new service added
  • Core Service : LockService
    • new lock type added.  No code change required.
  • Core Service : NodeService
    • new method getChildAssocsByPropertyValue
  • Core Service : WorkflowService
    • getCompletedWorkflows method added
    • getWorkflows method added
    • isTaskEditable, isTaskReassignable, isTaskClaimable and isTaskReleasable methods added
    • getter and setter methods added to all Workflow objects to complement existing public fields
  • Core Service: PermissionService
    • hasReadPermission method added
  • Internal Service : AttributeService
    • refactored API and implementation - now provides thin wrapper around propertyValues DAO
    • typically only used internally by Alfresco, however ...
    • ... if used externally then will require custom patch to migrate the attribute data as well as custom code change
    • note: we may decide to deprecate in a future release and/or move out of 'cmr' package (if this likely to adversely affect you then please contact us)
  • Internal Service : AuditService
    • Removed deprecated search methods.
    • New search (and WebScript APIs added): Audit
  • Internal Service : ContentModelFormProcessor
    • refactored API and implementation - removed all static helper methods and made it more generic to support workflow/task forms which may have an impact on Form Filter implementations
  • Behaviours
    • find multiple class behaviours through (super-)class hierarchy (not just first) - warning: pls review/test your registered (super-)class behaviours (see AL-3885)

Custom Share Themes


You cannot use the '#Share' selector in your themes anymore, the reason is that it will not be available when pages are viewed inside a portlet/portal.
To make your custom themes work simple replace '#Share' with 'body'.

To improve theming possibilities for old and new components a number of new css classes has been introduced.
Add the following css classes (and their sub selectors) to your theme file.
For further details investigate each class and their usage in themes/default/presentation.css (ideally by doing a 'diff' of that file in your old and new Share distribution).


  • .share-toolbar
  • .form-element-border, .form-element-background-color
  • .theme-border-4

Flat button css rule updates. Look for the /* Override YUI Button styles for - flat button style */ section.


  • Tag names added to flat-button selectors, e.g.
.yui-skin-default .flat-button .yui-button
becomes
.yui-skin-default div.flat-button span.yui-button

  • Border rules removed from .yui-skin-default div.flat-button span.yui-button-hover and .yui-skin-default div.flat-button span.yui-button-hover span.first-child
  • Border style changed slightly.
.yui-skin-default div.flat-button span.yui-button
{
   background: none;
   border: transparent;
}

Selected item highlights have been simplified. Where there were once a host of targeted rules for li.selected, these have been reduced to one.


Project Sailfish (3.2 to 3.3)


Version of Java


Since Java 1.5 is now past its end of life from Alfresco version 3.3 is beginning to make use of Java 1.6 specific language features.  This should have little impact on the existing Public API.


Java API


  • the webscript framework moves to spring surf.
    • WebScript is now in org.springframework.extensions.webscripts
    • WebScriptServlet is now in org.springframework.extensions.webscripts
    • WebScriptRequest is now in org.springframework.extensions.webscripts
    • WebScriptResponse is now in org.springframework.extensions.webscripts 
  • core utilities move to spring surf
    • Config class is org.springframework.extensions.config.Config
  • Core Service, TransferService - new service added
  • StoreSelectorContentStore
    • StoreSelectorPolicies.OnContentMovedPolicy is deprecated.  Use StoreSelectorPolicies.AfterMoveContentPolicy.

Java Script API


  • transfer service - new root object

Web Service API


Custom Share Themes


To improve theming possibilities for old and new components a number of new css classes has been introduced.
Add the following css classes (and their sub selectors) to your theme file.
For further details investigate each class and their usage in themes/default/presentation.css (ideally by doing a 'diff' of that file in your old and new Share distribution).


  • .datagrid, .yui-dt-data
  • .toolbar
  • span.tag
  • .location-path, .location-site, .location-none
  • .categoryview
  • .rules-none a, .rules-list a
  • .theme-bg-color-6, .theme-bg-color-7, .theme-bg-selected, .theme-border-3
  • .docfolder-label, .docfolder-input
  • .tree-div
  • .ygtvlabel

Project Mobile (3.1 to 3.2)


Java API


Java Script API


  • Groups API
    • add new root object
  • Node API
    • add isSubType
  • Person API
    • create person overhauled (previous version was useless)
    • add delete person

Web Script API


Group support added


  • /api/rootgroups added
  • /api/groups added

Project Jaws (3.0 to 3.1)


Java API


Addition of base WCM services - WebProjectService, SandboxService, AssetService

VersionService - add deleteVersion


Java Script API


  • Addition of WCM Web Projects, Sandboxes, Assets

Web Script API


  • Addition of web project scripts

Alfresco 3.0


Releases
Customizing and Extending

Attachments

    Outcomes