This article refers to a proposed feature in Alfresco Share
Share Components provide a system for finding, installing and publishing SURF-based components for Alfresco Share.
A component is a collection of web scripts, Surf components and static assets, in addition to any supporting repository-tier web scripts, which can be installed into an Alfresco Share instance. Components may be packaged using the ZIP file format (or ACPs/Jars?), allowing for easy distribution and installation into the Alfresco repository which is used as a container.
Initially support should be provided within the Share Administration Console for searching one or more configured component stores and installing components on a system-wide basis. Ideally, certain components such as themes, language packs and dashlets would be installable by normal users for their own individual use. This would require deeper changes to Surf to allow different sets of web scripts or Surf components to be 'visible' for different users.
GET /componentstore/index - All components GET /componentstore/index/t/site-dashlet - Filter by component type GET /componentstore/index/org/alfresco - Filter by org.alfresco namespace GET /componentstore/index/t/admin-console/org/alfresco - Filter by component type and namespace GET /componentstore/index/t/admin-console/org/alfresco?q=test - Filter by component type, namespace and search term q
Get/Update/Add/Delete a component
GET /componentstore/item/org/alfresco/components/dashlets/site-tags-dashlet - Return JSON metadata POST /componentstore/item/org/alfresco/components/dashlets/site-tags-dashlet - Create new item PUT /componentstore/item/org/alfresco/components/dashlets/site-tags-dashlet - Update item DELETE /componentstore/item/org/alfresco/components/dashlets/site-tags-dashlet - Delete item
Get/Set component files
GET /componentstore/package/org/alfresco/components/dashlets/site-tags-dashlet GET /componentstore/package/org/alfresco/components/dashlets/site-tags-dashlet?f=[acp|zip|jar] PUT /componentstore/package/org/alfresco/components/dashlets/site-tags-dashlet
Submit component ratings/comments
POST /componentstore/reviews/org/alfresco/components/dashlets/site-tags-dashlet (JSON format, fields 'rating' and 'comment')
Component Consumer API
Component stores configured for the current repository
GET /components/stores - Get a JSON list of the stores configured against this repository POST /components/stores/socs - Add a new store called socs PUT /components/stores/socs - Update the socs store DELETE /components/stores/socs - Delete the socs store
Store listings (held locally in the repo)
GET /components/storeitems - List all store items that we know about GET /components/storeitems?q=searchterm - List all store items matching a search term POST /components/storeitems/update - Re-fetch the list of store items from the stores' APIs
POST /components/install/566 - Install component with local ID 566 POST /components/update/566 - Update component with local ID 566 to latest version available from the stores DELETE /components/delete/566 - Uninstall component with local ID 566 DELETE /components/delete/org/alfresco/components/dashlets/site-tags/dashlet - Uninstall component with ID org.alfresco.components.dashlets.site-tags-dashlet