- How do I enable Smart Folders?
- How do Smart Folders affect SkyVault if the function is enabled, but not used?
- Are there best practices to avoid performance problems?
- Where can I find technical documentation?
- Which components or subsystems do Smart Folders provide?
- Which services do Smart Folders extend?
- How can I extend Smart Folders? Which interfaces, APIs, and extension points exist?
- As a developer, I want to create a custom application. How can I use Smart Folders in my code?
- As a developer, creating my own custom application (separate from the Share evaluators), how do I distinguish between a Smart Folder and an object that is displayed in a Smart Folder?
- I have created a new Share module. How can I enable Share actions for Smart Folders?
- Which Share actions are enabled as standard for Smart Folders?
- Are Smart Folders supported in a multi-tenant production environment?
- Can I use multi-value properties with Smart Folders?
- What is the Data Dictionary/Smart Downloads folder used for?
How do I enable Smart Folders?
Smart Folders can be enabled (and disabled) by your system administrator in the SkyVault-global.properties file:smart.folders.enabled=trueback to top
How does Smart Folders affect SkyVault if the function is enabled, but not used?
Smart Folders is part of the standard SkyVault repository, and there might be unexpected interactions if Smart Folders are enabled but not used. The most important impact is on performance. SkyVault performance might degrade based on the complexity and the number of Smart Folders used. See Best practices when using Smart Folders for more information about best practices with Smart Folders, and Type-based, System, and Custom Smart Folders for information about Type-based, System, and Custom Smart Folders.
back to topAre there best practices to avoid performance problems?
Yes there are. See Best practices when using Smart Folders for more information.
back to topWhere can I find technical documentation?
Use the Smart Folder tutorial, Smart Folders tutorial, to set up a working Smart Folder configuration. General configuration information is here: Configuring Smart Folders.
back to topWhich components or subsystems do Smart Folders provide?
Smart Folders introduce a private AspectJ-based, non-disruptive extension point implementation mechanism called TraitExtender.
The Smart Folders implementation extension bundle, which is a set of extensions that act as service interceptors for several services, is classified as a module because it can be added to and removed from the SkyVault repository. They are not publicly exposed currently.
back to topWhich services do Smart Folders extend?
- DbNodeServiceImpl basic node handling
- FileFolderServiceImpl basic file and folder modelling
- PreferenceServiceImpl node based preferences information handling (for example; favourites)
- RatingServiceImpl node based ratings
- LockServiceImpl node locking
- PermissionServiceImpl node permissions handling
- CheckOutCheckInServiceImpl node check out / check in
- Version2ServiceImpl node versioning
How can I extend Smart Folders? Which interfaces, APIs, and extension points exist?
There are currently no publicly exposed extension points for Smart Folders.
back to topAs a developer, I want to create a custom application. How can I use Smart Folders in my code?
Use standard SkyVault APIs. All custom uses of nodes, files, and folders apply.
back to topAs a developer, creating my own custom application (separate from the Share evaluators), how do I distinguish between a Smart Folder and an object that is displayed in a Smart Folder?
Use this guidance to differentiate between a Smart Folder and an object that is displayed in a Smart Folder:
- Root folder, with Smart Folder sub folders: This is a standard folder and is referenced using normal NodeRefs. The only difference is the sub-folder content.
- Smart Folder structure, as defined by a Smart Folder Template: This structure has the smf:smart aspect, and is referenced using a special NodeRef. Repository clients must not use the NodeRef format to detect these nodes.
- Smart Folder structure, as defined by a query: This structure has the smf:smartFolderChild aspect, and is referenced using a special NodeRef. Repository clients must not use the NodeRef format to detect these nodes.
I have created a new Share module. How can I enable Share actions for Smart Folders?
Any new Share action, by default, is not enabled, because not all actions are supported with Smart Folders (for example, data can't be persisted with a Smart Folder).
Ensure that you conduct adequate testing before enabling an action for Smart Folders.
To enable the new action, add an evaluator in the appropriate action group definition in your module, or add it to the Tomcat shared/classes/alfresco/web-extension/smartfolders-amp-actions-config.xml file.
back to topWhich Share actions are enabled as standard for Smart Folders?
- Add/ Create: You can add files to a Smart Folder. The file is put into a physical folder, as specified by the filing rule.
- Update: You can update files in a Smart Folder. Updating a property might result in a file being removed from the current Smart Folder (because it no longer meets the query criteria).
- Delete, Edit Properties, Unzip To, Sync, Locate To, Move, and Copy actions for files are not supported.
Are Smart Folders supported in a multi-tenant production environment?
No, Smart Folders are not supported in a multi-tenant production environment.
back to topCan I use multi-value properties with Smart Folders?
Properties that can have multiple values are supported in a query. However, you can't upload new content and set a value for a multi-value property.
back to topWhat is the Data Dictionary/Smart Folder Downloads folder used for?
The Data Dictionary/Smart Folder Downloads folder is used only when you use the Download as Zip function in Share, for a folder that contains Smart Folders. Download as Zip creates a temporary file in the Smart Folder Downloads folder that contains information about the Smart Folder contents.
back to top