You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Introduction

DMS module do not exist anymore in M5. His re

Proposed approach

Create  DAM migration tasks located in the DAM module. Migration project is only used to migrate from 4.4.6 to 4.5.x.
All migrations needed to move from 4.5.x to 5.0.x are from module's responsibility.

  • Migrate DMS/Others Data repository to the DAM repository.
     Update folder and Data node type and property.
  • Update Content DMS references (UUID link from content to DMS).
     Adapt the content property in order to work with the new DAM module and asset handling.
  • Migrate Uploaded Data (in the content tree) to the DAM repository.
     Copy binary & create DAM  asset.
     Adapt the content property in order to work with the new DAM module and asset handling.

ToDo based on these task: (Is this section redundant with below items???)

  • Migrate DMS to DAM repository.
    Export the DAM bootstrap file.
  • Migrate demo-project / demo-features data reference from DMS to DAM
    Export the demo-project and demo-features bootstrap files
  • Update Demo project version handler
     Register a new delta (from 2.5) with the 3 DAM migration tasks
  • Update Demo project bootstrap files
    Replace the existing DMS/Demo-project/Demo-features bootstrap files with the previously newly created.

Tasks

Migrate Binary data to DAM repository

GOAL: Migrate DMS (or other repository) into the DAM repository.

REQUIREMENTS:

  • All node identifier should be kept (identifier for folder or dataNode are the same in DMS or DAM repository)
  • Keep the DMS folder structure
  • Possibility to add parent folder on the DAM repository
  • Possibility to migrate partial DMS tree structure.

STEPS:

  1. Copy DMS specific repository's paths (List<"/demo-project", "/demo-doc">) into the target DAM repository and sub-path.
  2. Change the property's of Folder node and primaryType (mgnl:folder)  
  3. Change the property's of Asset node and primaryType (mgnl:asset)  

Class: MoveDataRepositoryToDAMMigrationTask
Constructor attributes
:

PropertyDescriptionDefault valueValid values
taskNameTask name used by the reporting tool, and to log/display informations related to this task. String 
taskDescriptionTask Description used to display informations in the admin. central update view. String
originalPathsListList of the data path  to migrate. For example from the DMS repository : 
Arrays.asList("/demo-project", "/demo-doc") will only migrate the content of this two folders.
 List<String>
targetSubPathSubroot folder that will contain the migrated DMS folders. If targetSubPat=subRoot, then the DAM repository will have the following structure :
subRoot/deom-project/... If set to null, the exact same folder structure will be duplicate.
 String
dataRepositorySource repository name. Typically  dms String

Change DMS to DAM content references

GOAL: Change content node reference from DMS to DAM module.

REQUIREMENTS:

  • All image / video / audio that reference DMS content should link to DAM.
  • No changes for Link's or image gallery needed. Asset should handle this internal data link.
  • Possibility to migrate partial Content tree structure.

STEPS:

  1. Iterate the Content nodes and in case of a DMS reference change and remove property
    1. DMS reference
      1. image=dms
      2. imageDmsUUID=dmsuuid
    2. DAM reference
      1. image=dmsuuid

Class: ChangeDataReferenceToDAMMigrationTask
Constructor attributes
:

PropertyDescriptionDefault valueValid values
taskNameTask name used by the reporting tool, and to log/display informations related to this task. String 
taskDescriptionTask Description used to display informations in the admin. central update view. String
contentRepositoryContent repository name. Typically  website String
contentPathsListList of the content path  to handle. For example from the website repository : 
Arrays.asList("/demo-project") will only handle the content of this folder.
 List<String>

This module used the NodeVisitor pattern in order to treat the content tree. It is possible to add customs NodeVisitor by extending this class and override the protected List<NodeVisitor> addCustomVisitors() method.

All visitor define will then be apply to the content tree.

 

Move uploaded binary from content(website) to DAM repository

GOAL: Move the binary data stored under the content repository (website) to the DAM repository.

REQUIREMENTS:

  • All image / video / audio that are stored in the content repository are moved under the DAM repository.
  • Create and initialize a new Asset Node based on the moved binary Node.
  • From the content Node, refer this Asset as a standard DAM resource.
  • Remove the old uploaded binary data from the content repository.

STEPS:

Iterate the Content nodes and in case of an upload content is found:

  1. Copy the binary node to the DAM repository
    1. Create the DAM folder
      If the binary node was found under demo-project/about/subsection-articles/article/content/01
      this folder will be created in the DAM repository.
  2. Create an Asset Node based on the information stored in the moved binary node.
  3. Add the binary node as child of the Asset Node
  4. Change the property of the content Node in order to use the DAM module to refer the Binary data.
  5. Remove the old binary node stored under the content repository.

Class: MoveUploadedContentToDAMMigrationTask
Constructor attributes
:

PropertyDescriptionDefault valueValid values
taskNameTask name used by the reporting tool, and to log/display informations related to this task. String 
taskDescriptionTask Description used to display informations in the admin. central update view. String
contentRepositoryContent repository name. Typically  website String
contentPathsListList of the content path  to handle. For example from the website repository : 
Arrays.asList("/demo-project") will only handle the content of this folder.
 List<String>
targetSubPathSubroot folder that will contain the migrated uploaded binary. If targetSubPat=subRoot, then the DAM repository will have the following structure :
subRoot/demo-project/about/subsection-articles/article/content/01... If set to null, the exact same folder structure will be duplicate.
 String

 

FAQ:

Q: Are the images uploaded via the FCK Editor also handled by the task "Move uploaded binary from content(website) to DAM repository" ??

R: 


Q: Will the FCK Editor upload feature be explicitely disabled for Magnolia 5? And if the feature is enabled, what will happen. It will also store the image in the DAM ??

 

 

  • No labels