Getting Into The Flow With CQ DAM

Preview:

DESCRIPTION

What is Communiqué Digital Asset Management (CQ DAM) and how to extend it with new media handlers, converters and exporters.

Citation preview

Lars Trieloff, Product Manager

Get into the Flow with CQ DAM

Day Tech Summit Basel,June 2008

1

Hello, my name is Lars Trieloff

Product Manager Collaboration and Digital Asset Management

With Day since November 2007 Background:

Open Source Software Development

Collaboration Software

Technical Documentation (DocBook)

Blogging

IT Systems Engineering

2

Hello, my name is Lars Trieloff

Product Manager Collaboration and Digital Asset Management

With Day since November 2007 Background:

Open Source Software Development

Collaboration Software

Technical Documentation (DocBook)

Blogging

IT Systems Engineering

2

Product Management: Department of “not yet”

Communiqué DAM

3

Digital Asset Management and Asset Centric Applications on one common enterprise-grade

Platform

CRX-based RepositoryShare content with other applications, use connectors to access legacy repositories

4

CRX-based RepositoryShare content with other applications, use connectors to access legacy repositories

4

RESTPublish content via Web, WebDAV or Windows File Sharing (CIFS)

5

RESTPublish content via Web, WebDAV or Windows File Sharing (CIFS)

5

AJAXRich, desktop-like user experience, drag and drop, no delay

6

AJAXRich, desktop-like user experience, drag and drop, no delay

6

OSGiInfinite extensibility for media handlers, workflows, user interfaces, exporters

7

OSGiInfinite extensibility for media handlers, workflows, user interfaces, exporters

7

8

Value Proposition

Unique Repository for Digital Assets means

reduced cost of ownership for assets increased value for assets as these are easily searchable and retrievableBuilt-in media processing capabilitiesUnlimited Extensibility without Restarts

Demo

9

DAM 4.5?

Technically, DAM is based on Communiqué 5 platform Sling, OSGi, Widget Framework

But it still integrates with Communiqué 4 and is made available before CQ5 launch

10

Deployment Architecture

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

11

CRX

Standards-compliant content repository based on Apache

Jackrabbit Content Repository for

Java (JCR)

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

12

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

CQSE

Day’s Servlet Container

Alternatives other Servlet Containers Apache Tomcat Jetty

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

13

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

Sling Servlet

Instantiates OSGi Runtime

Basic Request Handling

Manages OSGi bundles via REST

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

14

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

Apache Felix

OSGi runtime application life cycle

management service registry basic services

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

15

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

OSGi Bundles

All functionality in Sling is implemented via OSGi bundles

OSGi bundles can offer extension points

can run 3rd party plugins

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

16

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

Extending the DAM

Create a OSGi Bundle Implement existing

DAM InterfacesAttach to extension

pointsDeploy your bundle

CRX Repository

DAM Webapp

Sling Servlet

Apache Felix - OSGi Runtime

OSGi Bundles

DAM UI

Bundle

Image

Support

3rd Party

Plugin

JCR

DAM UI

Bundle

Image

Support

3rd Party

Plugin

CQSE - Servlet Container

17

DAM API Guide

• Implements media (file type) support

• com.day.cq.dam.MediaHandler

•com.day.cq.dam.media.ImageMediaHandler

• implementation hint: extend com.day.cq.dam.media.AbstractMediaHandler

18

MediaHandler

DAM API Guide

• Exports media, e.g. creates a ZIP archive or uploads to external server

• com.day.cq.dam.export.Exporter

• implementation hint: extend com.day.cq.dam.export.AbstractBackgroundExporter

• Only one method: export()

19

Exporter

DAM API Guide

• Converts one image format into another, e.g. Docs into PDF

• com.day.cq.dam.converter.Converter

• Applicable range: getInputMimeTypes(), getOutputMimeTypes(), canConvert()

• The actual conversion: convert()

• operates at byte or InputStream level

20

Converter

Two ways of coding DAM

21

Take the Volvo or the Vespa

All the power, performance and security of Java, static typing, workflows and OSGi

But sometimes all you need is a quick script around the block...

Coding

22

Wrap-up

Communiqué DAM gives you Digital Asset Management based on JCR, CRX and Sling

Integration with Communiqué 4 Media Library

Document, Image, Video and Audio handling

AJAX Interface, WebDAV and CIFS (Windows Networking)

Communiqué DAM is a powerful platform for asset centric applications

harness the power of CRX, Sling and OSGi

use existing extension points to add additional media type support

use the scripting API to extend and customize the user interface

Communiqué DAM - available now

23

Thank you

24

Learn more at www.day.comor ask lars.trieloff@day.com

Recommended