public class CmsResourceTypeImage extends A_CmsResourceType
| Modifier and Type | Class and Description |
|---|---|
protected static class |
CmsResourceTypeImage.CmsImageAdjuster
A data container for image size and scale operations.
|
I_CmsResourceType.Formatter| Modifier and Type | Field and Description |
|---|---|
static org.apache.commons.logging.Log |
LOG
The log object for this class.
|
static java.lang.String |
PROPERTY_VALUE_UNLIMITED
The value for the
CmsPropertyDefinition.PROPERTY_IMAGE_SIZE property if resources in
a folder should never be downscaled. |
CONFIGURATION_GALLERY_JAVASCRIPT_PATH, CONFIGURATION_GALLERY_PREVIEW_PROVIDER, CONFIGURATION_GALLERY_TYPE_NAMES, CONFIGURATION_INTERNAL, DEFAULT_GALLERY_PREVIEW_PROVIDER, m_addititionalModuleResourceType, m_className, m_configuration, m_copyResources, m_defaultProperties, m_frozen, m_galleryPreviewProvider, m_mappings, m_moduleName, m_typeId, m_typeName, MACRO_RESOURCE_FOLDER_PATH, MACRO_RESOURCE_FOLDER_PATH_TOUCH, MACRO_RESOURCE_NAME, MACRO_RESOURCE_PARENT_PATH, MACRO_RESOURCE_ROOT_PATH, MACRO_RESOURCE_SITE_PATHADD_MAPPING_METHOD, ADD_RESOURCE_TYPE_METHOD, CONFIGURATION_PROPERTY_CREATE, CONFIGURATION_RESOURCE_TYPE_ID, CONFIGURATION_RESOURCE_TYPE_NAME, PROPERTY_ON_RESOURCE, PROPERTY_ON_STRUCTUREADD_PARAMETER_METHOD, INIT_CONFIGURATION_METHOD| Constructor and Description |
|---|
CmsResourceTypeImage()
Default constructor, used to initialize member variables.
|
| Modifier and Type | Method and Description |
|---|---|
CmsResource |
createResource(CmsObject cms,
CmsSecurityManager securityManager,
java.lang.String resourcename,
byte[] content,
java.util.List<CmsProperty> properties)
Creates a new resource of the given resource type
with the provided content and properties.
|
static CmsImageScaler |
getDownScaler(CmsObject cms,
java.lang.String rootPath)
Returns the image downscaler to use when writing an image resource to the given root path.
|
java.lang.String |
getGalleryPreviewProvider()
Returns the gallery preview provider class name.
|
int |
getLoaderId()
Returns the loader type id of this resource type.
|
static int |
getStaticTypeId()
Returns the static type id of this (default) resource type.
|
static java.lang.String |
getStaticTypeName()
Returns the static type name of this (default) resource type.
|
CmsResource |
importResource(CmsObject cms,
CmsSecurityManager securityManager,
java.lang.String resourcename,
CmsResource resource,
byte[] content,
java.util.List<CmsProperty> properties)
Imports a resource to the OpenCms VFS.
|
void |
initConfiguration(java.lang.String name,
java.lang.String id,
java.lang.String className)
Special version of the configuration initialization used with resource types
to set resource type, id and class name, required for the XML configuration.
|
void |
replaceResource(CmsObject cms,
CmsSecurityManager securityManager,
CmsResource resource,
int type,
byte[] content,
java.util.List<CmsProperty> properties)
Replaces the content, type and properties of a resource.
|
protected java.util.List<CmsProperty> |
tryAddImageSizeFromSvg(byte[] content,
java.util.List<CmsProperty> properties)
Tries to use the viewbox from the SVG data to determine the image size and add it to the list of properties.
|
CmsFile |
writeFile(CmsObject cms,
CmsSecurityManager securityManager,
CmsFile resource)
Writes a resource, including it's content.
|
addConfigurationParameter, addCopyResource, addDefaultProperty, addMappingType, changeLock, chflags, chtype, chtype, copyResource, copyResourceToProject, createRelations, createSibling, deleteResource, equals, getAdjustLinksFolder, getCachePropertyDefault, getClassName, getConfiguration, getConfiguredCopyResources, getConfiguredDefaultProperties, getConfiguredMappings, getFormattersForResource, getGalleryTypes, getMacroResolver, getModuleName, getResourceType, getTypeId, getTypeName, hashCode, initConfiguration, initialize, isAdditionalModuleResourceType, isDirectEditable, isFolder, isIdentical, lockResource, moveResource, processCopyResources, processDefaultProperties, removeResourceFromProject, replaceResource, restoreResource, setAdditionalModuleResourceType, setAdjustLinksFolder, setDateExpired, setDateLastModified, setDateReleased, setModuleName, toString, undelete, undoChanges, unlockResource, updateRelationForUndo, writePropertyObject, writePropertyObjectspublic static final org.apache.commons.logging.Log LOG
public static final java.lang.String PROPERTY_VALUE_UNLIMITED
CmsPropertyDefinition.PROPERTY_IMAGE_SIZE property if resources in
a folder should never be downscaled.public CmsResourceTypeImage()
public static CmsImageScaler getDownScaler(CmsObject cms, java.lang.String rootPath)
If null is returned, image downscaling must not be used for the resource with the given path.
This may be the case if image downscaling is not configured at all, or if image downscaling has been disabled
for the parent folder by setting the folders property CmsPropertyDefinition.PROPERTY_IMAGE_SIZE
to the value PROPERTY_VALUE_UNLIMITED.
cms - the current OpenCms user contextrootPath - the root path of the resource to writenull if no downscaling is required for the resourcepublic static int getStaticTypeId()
public static java.lang.String getStaticTypeName()
public CmsResource createResource(CmsObject cms, CmsSecurityManager securityManager, java.lang.String resourcename, byte[] content, java.util.List<CmsProperty> properties) throws CmsException
I_CmsResourceTypecreateResource in interface I_CmsResourceTypecreateResource in class A_CmsResourceTypecms - the initialized CmsObjectsecurityManager - the initialized OpenCms security managerresourcename - the name of the resource to create (full path)content - the content for the new resourceproperties - the properties for the new resourceCmsException - if something goes wrongI_CmsResourceType.createResource(org.opencms.file.CmsObject, org.opencms.db.CmsSecurityManager, java.lang.String, byte[], java.util.List)public java.lang.String getGalleryPreviewProvider()
I_CmsResourceTypegetGalleryPreviewProvider in interface I_CmsResourceTypegetGalleryPreviewProvider in class A_CmsResourceTypeI_CmsResourceType.getGalleryPreviewProvider()public int getLoaderId()
I_CmsResourceTypegetLoaderId in interface I_CmsResourceTypegetLoaderId in class A_CmsResourceTypeI_CmsResourceType.getLoaderId()public CmsResource importResource(CmsObject cms, CmsSecurityManager securityManager, java.lang.String resourcename, CmsResource resource, byte[] content, java.util.List<CmsProperty> properties) throws CmsException
I_CmsResourceTypeIf a resource already exists in the VFS (i.e. has the same name and same id) it is replaced by the imported resource.
If a resource with the same name but a different id exists, the imported resource is (usually) moved to the "lost and found" folder.
importResource in interface I_CmsResourceTypeimportResource in class A_CmsResourceTypecms - the initialized CmsObjectsecurityManager - the initialized OpenCms security managerresourcename - the target name (with full path) for the resource after importresource - the resource to be importedcontent - the content of the resourceproperties - the properties of the resourceCmsException - if something goes wrongI_CmsResourceType.importResource(org.opencms.file.CmsObject, org.opencms.db.CmsSecurityManager, java.lang.String, org.opencms.file.CmsResource, byte[], java.util.List)public void initConfiguration(java.lang.String name, java.lang.String id, java.lang.String className) throws CmsConfigurationException
I_CmsResourceTypePlease note: Many resource types defined in the core have in fact a fixed resource type and a fixed id. Configurable name and id is used only for certain types.
The provided named class must implement this interface ().
Usually the provided class name should be the class name of the resource type instance,
but this may be different in special cases or configuration errors.
For example, if a module is imported that contains it's own resource type class files,
the included class file are usually not be available until the server is restarted.
If the named class given in the XML configuration (or module manifest.xml) is not available,
or not implementing I_CmsResourceType,
then I_CmsResourceType is used for the resource type instance.CmsResourceTypeUnknown
initConfiguration in interface I_CmsResourceTypeinitConfiguration in class A_CmsResourceTypename - the resource type nameid - the resource type idclassName - the class name of the resource type (read from the XML configuration)CmsConfigurationException - if the configuration is invalidA_CmsResourceType.initConfiguration(java.lang.String, java.lang.String, String)public void replaceResource(CmsObject cms, CmsSecurityManager securityManager, CmsResource resource, int type, byte[] content, java.util.List<CmsProperty> properties) throws CmsException
I_CmsResourceTypereplaceResource in interface I_CmsResourceTypereplaceResource in class A_CmsResourceTypecms - the current cms contextsecurityManager - the initialized OpenCms security managerresource - the name of the resource to replacetype - the new type of the resourcecontent - the new content of the resourceproperties - the new properties of the resourceCmsException - if something goes wrongI_CmsResourceType.replaceResource(org.opencms.file.CmsObject, org.opencms.db.CmsSecurityManager, org.opencms.file.CmsResource, int, byte[], java.util.List)public CmsFile writeFile(CmsObject cms, CmsSecurityManager securityManager, CmsFile resource) throws CmsException, CmsVfsException, CmsSecurityException
I_CmsResourceType
Applies only to resources of type
that have a binary content attached.CmsFile
writeFile in interface I_CmsResourceTypewriteFile in class A_CmsResourceTypecms - the current cms contextsecurityManager - the initialized OpenCms security managerresource - the resource to apply this operation toCmsException - if something goes wrongCmsVfsExceptionCmsSecurityExceptionI_CmsResourceType.writeFile(org.opencms.file.CmsObject, org.opencms.db.CmsSecurityManager, org.opencms.file.CmsFile)protected java.util.List<CmsProperty> tryAddImageSizeFromSvg(byte[] content, java.util.List<CmsProperty> properties)
content - the content bytes of an SVG fileproperties - the original properties (this object will not be modified)