org.broadleafcommerce.cms.file.service
Class StaticAssetServiceImpl

java.lang.Object
  extended by org.broadleafcommerce.cms.file.service.StaticAssetServiceImpl
All Implemented Interfaces:
StaticAssetService

@Service(value="blStaticAssetService")
public class StaticAssetServiceImpl
extends Object
implements StaticAssetService

Created by bpolster.


Field Summary
protected  ImageArtifactProcessor imageArtifactProcessor
           
protected  StaticAssetDao staticAssetDao
           
protected  StaticAssetPathService staticAssetPathService
           
protected  StaticAssetStorageService staticAssetStorageService
           
protected  boolean storeAssetsOnFileSystem
           
 
Constructor Summary
StaticAssetServiceImpl()
           
 
Method Summary
protected  String buildAssetURL(Map<String,String> assetProperties, String originalFilename)
          Will assemble the url from the passed in properties as /{entityType}/{fileName} /product/7001-ab12 If the properties above are not set, it will generate the fileName randomly.
 String convertAssetPath(String assetPath, String contextPath, boolean secureRequest)
           
 StaticAsset createStaticAssetFromFile(org.springframework.web.multipart.MultipartFile file, Map<String,String> properties)
          Used when uploading a file to Broadleaf.
 StaticAsset findStaticAssetByFullUrl(String fullUrl)
           
 StaticAsset findStaticAssetById(Long id)
           
protected  String generateFileName(int size)
          Generates a filename as a set of Hex digits.
protected  String getCountUrl(String fullUrl, int count, boolean legacyFormat)
          Gets the count URL based on the original fullUrl.
protected  String getFileExtension(String fileName)
           
protected  void getMimeType(org.springframework.web.multipart.MultipartFile file, StaticAsset newAsset)
           
 String getStaticAssetEnvironmentSecureUrlPrefix()
           
 String getStaticAssetEnvironmentUrlPrefix()
           
 String getStaticAssetUrlPrefix()
           
 List<StaticAsset> readAllStaticAssets()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

imageArtifactProcessor

protected ImageArtifactProcessor imageArtifactProcessor

storeAssetsOnFileSystem

@Value(value="${asset.use.filesystem.storage}")
protected boolean storeAssetsOnFileSystem

staticAssetDao

protected StaticAssetDao staticAssetDao

staticAssetStorageService

protected StaticAssetStorageService staticAssetStorageService

staticAssetPathService

protected StaticAssetPathService staticAssetPathService
Constructor Detail

StaticAssetServiceImpl

public StaticAssetServiceImpl()
Method Detail

findStaticAssetById

public StaticAsset findStaticAssetById(Long id)
Specified by:
findStaticAssetById in interface StaticAssetService

readAllStaticAssets

public List<StaticAsset> readAllStaticAssets()
Specified by:
readAllStaticAssets in interface StaticAssetService

getFileExtension

protected String getFileExtension(String fileName)

generateFileName

protected String generateFileName(int size)
Generates a filename as a set of Hex digits.

Parameters:
size -
Returns:

buildAssetURL

protected String buildAssetURL(Map<String,String> assetProperties,
                               String originalFilename)
Will assemble the url from the passed in properties as /{entityType}/{fileName} /product/7001-ab12 If the properties above are not set, it will generate the fileName randomly.

Parameters:
url -
asset -
assetProperties -
Returns:

createStaticAssetFromFile

@Transactional(value="blTransactionManager")
public StaticAsset createStaticAssetFromFile(org.springframework.web.multipart.MultipartFile file,
                                                           Map<String,String> properties)
Description copied from interface: StaticAssetService
Used when uploading a file to Broadleaf. This method will create the corresponding asset. Depending on the the implementation, the actual asset may be saved to the DB or to the file system. The default implementation StaticAssetServiceImpl has a environment properties that determine this behavior asset.use.filesystem.storage The properties Map allows for implementors to update other Asset properties at the same time they are uploading a file. The default implementation uses this for an optional URL to be specified.

Specified by:
createStaticAssetFromFile in interface StaticAssetService
Parameters:
file - - the file being uploaded
properties - - additional meta-data properties
Returns:
See Also:
StaticAssetServiceImpl

getCountUrl

protected String getCountUrl(String fullUrl,
                             int count,
                             boolean legacyFormat)
Gets the count URL based on the original fullUrl. If requested in legacy format this will return URLs like: /path/to/image.jpg-1 /path/to/image.jpg-2 Whereas if this is in non-lagacy format (legacy == false): /path/to/image-1.jpg /path/to/image-2.jpg Used to deal with duplicate URLs of uploaded assets


getMimeType

protected void getMimeType(org.springframework.web.multipart.MultipartFile file,
                           StaticAsset newAsset)

findStaticAssetByFullUrl

public StaticAsset findStaticAssetByFullUrl(String fullUrl)
Specified by:
findStaticAssetByFullUrl in interface StaticAssetService

getStaticAssetUrlPrefix

public String getStaticAssetUrlPrefix()
Specified by:
getStaticAssetUrlPrefix in interface StaticAssetService
See Also:
StaticAssetPathService.getStaticAssetUrlPrefix()

getStaticAssetEnvironmentUrlPrefix

public String getStaticAssetEnvironmentUrlPrefix()
Specified by:
getStaticAssetEnvironmentUrlPrefix in interface StaticAssetService
See Also:
StaticAssetPathService.getStaticAssetEnvironmentUrlPrefix()

getStaticAssetEnvironmentSecureUrlPrefix

public String getStaticAssetEnvironmentSecureUrlPrefix()
Specified by:
getStaticAssetEnvironmentSecureUrlPrefix in interface StaticAssetService
See Also:
StaticAssetPathService.getStaticAssetEnvironmentSecureUrlPrefix()

convertAssetPath

public String convertAssetPath(String assetPath,
                               String contextPath,
                               boolean secureRequest)
Specified by:
convertAssetPath in interface StaticAssetService
See Also:
StaticAssetPathService.convertAssetPath(String, String, boolean)


Copyright © 2013. All Rights Reserved.