net.sourceforge.openutils.mgnlmedia.media.types.impl
Class BaseTypeHandler

java.lang.Object
  extended by net.sourceforge.openutils.mgnlmedia.media.types.impl.BaseTypeHandler
All Implemented Interfaces:
MediaTypeHandler
Direct Known Subclasses:
AudioTypeHandler, DocumentTypeHandler, ImageTypeHandler, MediaWithPreviewImageTypeHandler

public abstract class BaseTypeHandler
extends Object
implements MediaTypeHandler

Base implementation of MediaTypeHandler for common used method

Version:
$Id: BaseTypeHandler.java 2364 2010-05-09 11:34:58Z fgiust $
Author:
molaschi

Field Summary
static String ORGINAL_NODEDATA_NAME
          Nodedata name where original media content is saved
 
Fields inherited from interface net.sourceforge.openutils.mgnlmedia.media.types.MediaTypeHandler
METADATA_BITDEPTH, METADATA_DURATION, METADATA_EXTENSION, METADATA_FRAMERATE, METADATA_HEIGHT, METADATA_SIZE, METADATA_WIDTH
 
Constructor Summary
BaseTypeHandler()
           
 
Method Summary
protected  void addToInfo(info.magnolia.cms.core.Content media, Map<String,String> info, String key)
          Adds a new metadata to the map, converting an existing nodedata
 String getAbstract(info.magnolia.cms.core.Content media)
          return abstract
 String getDescription(info.magnolia.cms.core.Content media)
          return description
 String getExtension(info.magnolia.cms.core.Content media)
          return filename
 String getFilename(info.magnolia.cms.core.Content media)
          return filename
 String getFullFilename(info.magnolia.cms.core.Content media)
          return filename
 Map<String,String> getMediaInfo(info.magnolia.cms.core.Content media)
          Returns the basic media info (file type, size for images, ...)
 String getNewNodeName(info.magnolia.cms.beans.runtime.MultipartForm form, javax.servlet.http.HttpServletRequest request)
          Get the name for a new node
protected  info.magnolia.cms.core.NodeData getOriginalFileNodeData(info.magnolia.cms.core.Content media)
          Get the default "original" nodedata
 String getPreviewImageNodeDataName()
          Get the name of the nodedata for the image used for preview
 String getPreviewUrl(info.magnolia.cms.core.Content media)
          return thumbnail absolute url
 String getTags(info.magnolia.cms.core.Content media)
          return tags
 String getTitle(info.magnolia.cms.core.Content media)
          return title
 String getUrl(info.magnolia.cms.core.Content media)
          return thumbnail absolute url
 String getUrl(info.magnolia.cms.core.Content media, Map<String,String> options)
          
 void init(info.magnolia.cms.core.Content typeDefinitionNode)
          init handler
 boolean isExternal(info.magnolia.cms.core.Content media)
          return true if media has no binary-data
 boolean onPostSave(info.magnolia.cms.core.Content media)
          Called from dialog when saving a media
 boolean onSavingPropertyMedia(info.magnolia.cms.core.Content media, info.magnolia.cms.core.Content parentNode, info.magnolia.cms.core.Content configNode, String name, javax.servlet.http.HttpServletRequest request, info.magnolia.cms.beans.runtime.MultipartForm form, int type, int valueType, int isRichEditValue, int encoding)
          Called when a media is going to be associated with a node
 void saveFromZipFile(info.magnolia.cms.core.Content media, File f, String cleanFileName, String extension)
          save a media file to a newly created media content
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sourceforge.openutils.mgnlmedia.media.types.MediaTypeHandler
getThumbnailUrl
 

Field Detail

ORGINAL_NODEDATA_NAME

public static final String ORGINAL_NODEDATA_NAME
Nodedata name where original media content is saved

See Also:
Constant Field Values
Constructor Detail

BaseTypeHandler

public BaseTypeHandler()
Method Detail

init

public void init(info.magnolia.cms.core.Content typeDefinitionNode)
init handler

Specified by:
init in interface MediaTypeHandler
Parameters:
typeDefinitionNode - type definition node

getNewNodeName

public String getNewNodeName(info.magnolia.cms.beans.runtime.MultipartForm form,
                             javax.servlet.http.HttpServletRequest request)
Get the name for a new node

Specified by:
getNewNodeName in interface MediaTypeHandler
Parameters:
form - multipart form
request - current request
Returns:
new name

getPreviewImageNodeDataName

public String getPreviewImageNodeDataName()
Description copied from interface: MediaTypeHandler
Get the name of the nodedata for the image used for preview

Specified by:
getPreviewImageNodeDataName in interface MediaTypeHandler
Returns:
the name of the nodedata for the image used for preview

onSavingPropertyMedia

public boolean onSavingPropertyMedia(info.magnolia.cms.core.Content media,
                                     info.magnolia.cms.core.Content parentNode,
                                     info.magnolia.cms.core.Content configNode,
                                     String name,
                                     javax.servlet.http.HttpServletRequest request,
                                     info.magnolia.cms.beans.runtime.MultipartForm form,
                                     int type,
                                     int valueType,
                                     int isRichEditValue,
                                     int encoding)
                              throws javax.jcr.RepositoryException,
                                     info.magnolia.cms.security.AccessDeniedException
Called when a media is going to be associated with a node

Specified by:
onSavingPropertyMedia in interface MediaTypeHandler
Parameters:
media - media
parentNode - node to be associated
configNode - configuration node
name - property name
request - current request
form - request form
type - typee
valueType - value type
isRichEditValue - is rich edit
encoding - encoding
Returns:
true on success
Throws:
javax.jcr.RepositoryException - repository exception
info.magnolia.cms.security.AccessDeniedException - access denied exception

saveFromZipFile

public void saveFromZipFile(info.magnolia.cms.core.Content media,
                            File f,
                            String cleanFileName,
                            String extension)
                     throws info.magnolia.cms.security.AccessDeniedException,
                            javax.jcr.RepositoryException
save a media file to a newly created media content

Specified by:
saveFromZipFile in interface MediaTypeHandler
Parameters:
media - media content to save to
f - file input stream
cleanFileName - file name without extension
extension - file extension
Throws:
info.magnolia.cms.security.AccessDeniedException - exception accessing node
javax.jcr.RepositoryException - exception working on repository

onPostSave

public boolean onPostSave(info.magnolia.cms.core.Content media)
Called from dialog when saving a media

Specified by:
onPostSave in interface MediaTypeHandler
Parameters:
media - media saving
Returns:
true if continue saving

getOriginalFileNodeData

protected info.magnolia.cms.core.NodeData getOriginalFileNodeData(info.magnolia.cms.core.Content media)
Get the default "original" nodedata

Parameters:
media - media
Returns:
default nodedata

isExternal

public boolean isExternal(info.magnolia.cms.core.Content media)
Description copied from interface: MediaTypeHandler
return true if media has no binary-data

Specified by:
isExternal in interface MediaTypeHandler
Parameters:
media - media
Returns:
true if media has no binary-data

getExtension

public String getExtension(info.magnolia.cms.core.Content media)
return filename

Specified by:
getExtension in interface MediaTypeHandler
Parameters:
media - media
Returns:
filename

getFilename

public String getFilename(info.magnolia.cms.core.Content media)
return filename

Specified by:
getFilename in interface MediaTypeHandler
Parameters:
media - media
Returns:
filename

getFullFilename

public String getFullFilename(info.magnolia.cms.core.Content media)
return filename

Specified by:
getFullFilename in interface MediaTypeHandler
Parameters:
media - media
Returns:
filename

getUrl

public String getUrl(info.magnolia.cms.core.Content media,
                     Map<String,String> options)

Specified by:
getUrl in interface MediaTypeHandler
Returns:
url

getUrl

public String getUrl(info.magnolia.cms.core.Content media)
return thumbnail absolute url

Specified by:
getUrl in interface MediaTypeHandler
Parameters:
media - media
Returns:
url

getPreviewUrl

public String getPreviewUrl(info.magnolia.cms.core.Content media)
return thumbnail absolute url

Specified by:
getPreviewUrl in interface MediaTypeHandler
Parameters:
media - media
Returns:
url

getTitle

public String getTitle(info.magnolia.cms.core.Content media)
return title

Specified by:
getTitle in interface MediaTypeHandler
Parameters:
media - media
Returns:
title

getTags

public String getTags(info.magnolia.cms.core.Content media)
return tags

Specified by:
getTags in interface MediaTypeHandler
Parameters:
media - media
Returns:
tags

getDescription

public String getDescription(info.magnolia.cms.core.Content media)
return description

Specified by:
getDescription in interface MediaTypeHandler
Parameters:
media - media
Returns:
description

getAbstract

public String getAbstract(info.magnolia.cms.core.Content media)
return abstract

Specified by:
getAbstract in interface MediaTypeHandler
Parameters:
media - media
Returns:
abstract

getMediaInfo

public Map<String,String> getMediaInfo(info.magnolia.cms.core.Content media)
Returns the basic media info (file type, size for images, ...)

Specified by:
getMediaInfo in interface MediaTypeHandler
Parameters:
media - media
Returns:
a formatted string for media info

addToInfo

protected void addToInfo(info.magnolia.cms.core.Content media,
                         Map<String,String> info,
                         String key)
Adds a new metadata to the map, converting an existing nodedata

Parameters:
media - main media node
info - map containing metadata keys/values
key - nodedata name


Copyright © 2008-2010 Openmind. All Rights Reserved.