use cases and technologies for integrating magnolia with alfresco
DESCRIPTION
In this session Axel Faust, PRODYNA will outline capabilities of the Alfresco content platform relevant to potential integration use cases and how those can help integrate indirect participants into editorial processes and general collaboration with Magnolia.TRANSCRIPT
![Page 1: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/1.jpg)
USE CASES AND TECHNOLOGIES FOR INTEGRATING MAGNOLIA WITH ALFRESCO
Credit: Christmas Lights by Abhishek Shirali Some Rights Reserved CC-BY 2.0
https://www.flickr.com/photos/abhishekshirali/11397502823
![Page 2: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/2.jpg)
AXEL FAUST PRODYNA AG
SENIOR IT CONSULTANT / SOFTWARE ARCHITECT
![Page 3: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/3.jpg)
“The open platform for business-critical content management and collaboration.”
In a (very) few words o Secure collaboration
o Content-centric business processes
o Compliant records management
o Open ECM for on-premise, cloud and mobile
![Page 4: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/4.jpg)
Subject Expert Group
Marketing
COLLABORATION
Repository
(on-premise)
Enterprise Sync
Hybrid Workflow
External
Agency
Cloud Media
Services
Cloud API
B2B / CLOUD ON-PREMISE
![Page 5: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/5.jpg)
Authors
Publisher
Direct
Access
SME
Marketing
External
Agency
![Page 6: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/6.jpg)
Authors
Publisher
Direct
Access
SME
Marketing
External
Agency
Create draft video
Create storyboard
Fill with subject detail
and sketch
Submit for „overhaul“
Review draft Submit for
review / inclusion
Asset collaboration
![Page 7: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/7.jpg)
Authors
Publisher
Direct
Access
SME
Marketing
External
Agency
Submission / Cherry-picking
Browse & Import
Create synchronization
Ask / submit for inclusion
Review & feedback
OR
Import
alternatively
![Page 8: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/8.jpg)
RELEVANT APIS
![Page 9: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/9.jpg)
REST(-like)
Generic domain model / API
Different protocol bindings
URL discovery
Focus on file/folder (+ item)
Formal type mechanism
Existing full-featured libraries
Proprietary API
Typically JSON-based
REST: focus on resources
REST-like: anything
(just make sure it‘s JSON)
![Page 10: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/10.jpg)
CMIS ISSUES „Everyone integrate with ME!“ syndrome
CMIS „transition phase“ – Magnolia 4.x – 5.x
Some key DMS concepts not yet supported
![Page 11: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/11.jpg)
REST ISSUES Majority of exposed API is „internal“
Discoverability of parameters / conditions
Identifiers typically non-universal / non-uniform
![Page 12: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/12.jpg)
HYBRID
INTEGRATION
![Page 13: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/13.jpg)
CONCEPT Best of both worlds
CMIS core + ReST add-ons to “flesh out”
Both platforms = active participants
Reusable / adaptable
Generic CMIS services / API
Pluggable actions, authentication, metadata mapping…
![Page 14: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/14.jpg)
DEMO
![Page 15: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/15.jpg)
CMIS CORE
![Page 16: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/16.jpg)
MODULE STRUCTURE
CMIS COMMON
CMIS CLIENT
CMIS MAPPING
CMIS BROWSER APP
CMIS CHEMISTRY
CLIENT
![Page 17: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/17.jpg)
MODULE STRUCTURE
CMIS COMMON
CMIS CLIENT
CMIS MAPPING
CMIS BROWSER APP
CMIS CHEMISTRY
CLIENT
provides
serivces
implements
data types
Server configuration (JCR)
Connector configuration (JCR)
Logic configuration (JCR)
„Standard“ content app
![Page 18: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/18.jpg)
SERVICE ABSTRACTION Service
Manager
Service Factory
Service
Service FactoryImpl
Service Impl
Session Aspect
produces
produces
retrieve service
Apache Chemistry
OpenCMIS provider
API
![Page 19: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/19.jpg)
SESSION ASPECT?
CMIS session setup
Host and binding
Authentication
Cache, proxy, compression…
![Page 20: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/20.jpg)
EXAMPLE ASPECT
External authentication (Alfresco)
Magnolia trusted to authenticate user
ReST setup call to obtain “user ticket”
Verification “Magnolia as client” + user exists
User ticket => CMIS “password”
![Page 21: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/21.jpg)
CONFIGURATION
![Page 22: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/22.jpg)
CONFIGURATION
![Page 23: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/23.jpg)
METAMODEL
MAPPING
![Page 24: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/24.jpg)
MAPPING ELEMENTS
Mapping Rule
Mapping Service
MappingManager
ApplicabilityDefinition
CompositeRule
XY Rule
![Page 25: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/25.jpg)
MAPPING ELEMENTS Mapping Service
MappingManager
Context • direction
• CMIS: identifier / parentIdentifier
• JCR: identifier / parentIdentifier
+ path / parentPath
• JCR workspace
• contextData (arbitrary)
Result • Primary / secondary type(s)
• Mapped properties (key-value)
• Binary stream
• Property / type removals
• Mapped children
Mapping Rule
ApplicabilityDefinition
CompositeRule
XY Rule
![Page 26: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/26.jpg)
CONFIGURATION
![Page 27: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/27.jpg)
REST INTERACTION
![Page 28: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/28.jpg)
1) Initiate asset process (REST)
2) Fetch / push asset(s) (CMIS)
N) Post/fetch updates to/for Pulse (REST)
N+1) Trigger review (REST)
N+2) Fetch / view result (CMIS)
N+3) Import asset(s) (CMIS)
N+4) Notify completion (REST)
![Page 29: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/29.jpg)
BASIC FRAMEWORK
Primarily Magnolia
Abstract service facades
JAX-RS / ReSTEasy client
Commands vs. actions / „remote forms“
![Page 30: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/30.jpg)
MODULES
CMIS
CLIENT
CMIS
MAPPING
CMIS
BROWSER APP
CMIS
CHEMISTRY
CLIENT
CMIS
COMMON
![Page 31: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/31.jpg)
MODULES
CMIS
CLIENT
CMIS
MAPPING
CMIS
BROWSER APP
CMIS
CHEMISTRY
CLIENT
ALFRESCO
CORE
ALFRESCO
UI
ALFRESCO
CHEMISTRY
CMIS
COMMON
![Page 32: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/32.jpg)
REMOTE FORM ACTION Action X
![Page 33: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/33.jpg)
REMOTE FORM ACTION Action X
1) Instantiate
with form / item ID
(ALF) Form
Definition
![Page 34: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/34.jpg)
REMOTE FORM ACTION Action X
1) Instantiate
with form / item ID
(ALF) Form
Definition (MGNL) Form
Definition
Item
2) Build
3) Mix-in cust.
fields
![Page 35: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/35.jpg)
REMOTE FORM ACTION Action X
1) Instantiate
with form / item ID
(ALF) Form
Definition Item
2) Build
3) Mix-in cust.
fields
(MGNL) Form
Definition
FormData 4) Submit Editor
Callback
![Page 36: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/36.jpg)
CONCLUSIONS &
FINAL REMARKS
![Page 37: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/37.jpg)
CONCLUSIONS
Highest „effort per progress“ in Magnolia UI
(#1: replacing JCR dependancies)
Wanted #1: CMIS module update (5.x)
Wanted #2: Command parameter exposure
Improbable: full identifier decoupling
![Page 38: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/38.jpg)
FINAL REMARKS
Magnolia 5.2.2 / Alfresco 4.0+ (minor fix req.)
Plan: basic modules => Community • CMIS browser + client services
• Simple submission / collaboration process
Thanks for your attention!
![Page 39: Use Cases and Technologies for Integrating Magnolia with Alfresco](https://reader033.vdocument.in/reader033/viewer/2022060107/554bd1feb4c905ac708b4b71/html5/thumbnails/39.jpg)
QUESTIONS &
ANSWERS