Liferay 6.1.2-ce-ga3

com.liferay.portlet.documentlibrary.store
Class S3Store

java.lang.Object
  extended by com.liferay.portlet.documentlibrary.store.BaseStore
      extended by com.liferay.portlet.documentlibrary.store.S3Store
All Implemented Interfaces:
Store

public class S3Store
extends BaseStore


Field Summary
 
Fields inherited from interface com.liferay.portlet.documentlibrary.store.Store
VERSION_DEFAULT
 
Constructor Summary
S3Store()
           
 
Method Summary
 void addDirectory(long companyId, long repositoryId, String dirName)
          Adds a directory.
 void addFile(long companyId, long repositoryId, String fileName, InputStream is)
          Adds a file based on an InputStream object.
 void checkRoot(long companyId)
          Ensures company's root directory exists.
protected  void cleanUpTempFiles()
           
protected  void cleanUpTempFiles(File file, long lastModified)
           
 void deleteDirectory(long companyId, long repositoryId, String dirName)
          Deletes a directory.
 void deleteFile(long companyId, long repositoryId, String fileName)
          Deletes a file.
 void deleteFile(long companyId, long repositoryId, String fileName, String versionLabel)
          Deletes a file at a particular version.
protected  org.jets3t.service.security.AWSCredentials getAWSCredentials()
           
 File getFile(long companyId, long repositoryId, String fileName, String versionLabel)
          Returns the file as a File object.
 InputStream getFileAsStream(long companyId, long repositoryId, String fileName, String versionLabel)
          Returns the file as an InputStream object.
protected  String getFileName(String key)
           
 String[] getFileNames(long companyId, long repositoryId)
           
 String[] getFileNames(long companyId, long repositoryId, String dirName)
          Returns all files of the directory.
protected  String[] getFileNames(org.jets3t.service.model.S3Object[] s3Objects)
           
 long getFileSize(long companyId, long repositoryId, String fileName)
          Returns the size of the file.
protected  String getHeadVersionLabel(long companyId, long repositoryId, String fileName)
           
protected  String getKey(long companyId, long repositoryId)
           
protected  String getKey(long companyId, long repositoryId, String fileName)
           
protected  String getKey(long companyId, long repositoryId, String fileName, String versionLabel)
           
protected  String getNormalizedFileName(String fileName)
           
protected  org.jets3t.service.model.S3Bucket getS3Bucket()
           
protected  org.jets3t.service.S3Service getS3Service()
           
protected  File getTempFile(org.jets3t.service.model.S3Object s3Object, String fileName)
           
 boolean hasDirectory(long companyId, long repositoryId, String dirName)
          Returns true if the directory exists.
 boolean hasFile(long companyId, long repositoryId, String fileName, String versionLabel)
          Returns true if the file exists.
 void move(String srcDir, String destDir)
          Moves an existing directory.
 void updateFile(long companyId, long repositoryId, long newRepositoryId, String fileName)
          Moves a file to a new data repository.
 void updateFile(long companyId, long repositoryId, String fileName, String newFileName)
           
 void updateFile(long companyId, long repositoryId, String fileName, String versionLabel, InputStream is)
          Updates a file based on an InputStream object.
 
Methods inherited from class com.liferay.portlet.documentlibrary.store.BaseStore
addFile, addFile, copyFileVersion, getFile, getFileAsBytes, getFileAsBytes, getFileAsStream, hasFile, updateFile, updateFile, updateFileVersion
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

S3Store

public S3Store()
Method Detail

addDirectory

public void addDirectory(long companyId,
                         long repositoryId,
                         String dirName)
Description copied from class: BaseStore
Adds a directory.

Specified by:
addDirectory in interface Store
Specified by:
addDirectory in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
dirName - the directory's name

addFile

public void addFile(long companyId,
                    long repositoryId,
                    String fileName,
                    InputStream is)
             throws SystemException
Description copied from class: BaseStore
Adds a file based on an InputStream object.

Specified by:
addFile in interface Store
Specified by:
addFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file name
is - the files's data
Throws:
SystemException - if a system exception occurred

checkRoot

public void checkRoot(long companyId)
Description copied from class: BaseStore
Ensures company's root directory exists. Only implemented by JCRStore.checkRoot(long).

Specified by:
checkRoot in interface Store
Specified by:
checkRoot in class BaseStore
Parameters:
companyId - the primary key of the company

deleteDirectory

public void deleteDirectory(long companyId,
                            long repositoryId,
                            String dirName)
                     throws SystemException
Description copied from class: BaseStore
Deletes a directory.

Specified by:
deleteDirectory in interface Store
Specified by:
deleteDirectory in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
dirName - the directory's name
Throws:
SystemException - if a system exception occurred

deleteFile

public void deleteFile(long companyId,
                       long repositoryId,
                       String fileName)
                throws SystemException
Description copied from class: BaseStore
Deletes a file. If a file has multiple versions, all versions will be deleted.

Specified by:
deleteFile in interface Store
Specified by:
deleteFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file's name
Throws:
SystemException - if a system exception occurred

deleteFile

public void deleteFile(long companyId,
                       long repositoryId,
                       String fileName,
                       String versionLabel)
                throws SystemException
Description copied from class: BaseStore
Deletes a file at a particular version.

Specified by:
deleteFile in interface Store
Specified by:
deleteFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file's name
versionLabel - the file's version label
Throws:
SystemException - if a system exception occurred

getFile

public File getFile(long companyId,
                    long repositoryId,
                    String fileName,
                    String versionLabel)
             throws PortalException,
                    SystemException
Description copied from class: BaseStore
Returns the file as a File object.

This method is useful when optimizing low-level file operations like copy. The client must not delete or change the returned File object in any way. This method is only supported in certain stores. If not supported, this method will throw an UnsupportedOperationException.

This method should be overrided if a more optimized approach can be used (e.g., FileSystemStore.getFile(long, long, String, String)).

Specified by:
getFile in interface Store
Overrides:
getFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file's name
versionLabel - the file's version label
Returns:
Returns the File object with the file's name
Throws:
PortalException - if the file's information was invalid
SystemException - if a system exception occurred

getFileAsStream

public InputStream getFileAsStream(long companyId,
                                   long repositoryId,
                                   String fileName,
                                   String versionLabel)
                            throws PortalException,
                                   SystemException
Description copied from class: BaseStore
Returns the file as an InputStream object.

Specified by:
getFileAsStream in interface Store
Specified by:
getFileAsStream in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file's name
versionLabel - the file's version label
Returns:
Returns the InputStream object with the file's name
Throws:
PortalException - if the file's information was invalid
SystemException - if a system exception occurred

getFileNames

public String[] getFileNames(long companyId,
                             long repositoryId)
                      throws SystemException
Throws:
SystemException

getFileNames

public String[] getFileNames(long companyId,
                             long repositoryId,
                             String dirName)
                      throws SystemException
Description copied from class: BaseStore
Returns all files of the directory.

Specified by:
getFileNames in interface Store
Specified by:
getFileNames in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
dirName - the directory's name
Returns:
Returns all files of the directory
Throws:
SystemException - if a system exception occurred

getFileSize

public long getFileSize(long companyId,
                        long repositoryId,
                        String fileName)
                 throws PortalException,
                        SystemException
Description copied from class: BaseStore
Returns the size of the file.

Specified by:
getFileSize in interface Store
Specified by:
getFileSize in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file's name
Returns:
Returns the size of the file
Throws:
PortalException - if the file's information was invalid
SystemException - if a system exception occurred

hasDirectory

public boolean hasDirectory(long companyId,
                            long repositoryId,
                            String dirName)
Description copied from class: BaseStore
Returns true if the directory exists.

Specified by:
hasDirectory in interface Store
Specified by:
hasDirectory in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
dirName - the directory's name
Returns:
true if the directory exists; false otherwise

hasFile

public boolean hasFile(long companyId,
                       long repositoryId,
                       String fileName,
                       String versionLabel)
                throws SystemException
Description copied from class: BaseStore
Returns true if the file exists.

Specified by:
hasFile in interface Store
Specified by:
hasFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file's name
versionLabel - the file's version label
Returns:
true if the file exists; false otherwise
Throws:
SystemException - if a system exception occurred

move

public void move(String srcDir,
                 String destDir)
Description copied from class: BaseStore
Moves an existing directory. Only implemented by JCRStore.move(String, String).

Specified by:
move in interface Store
Specified by:
move in class BaseStore
Parameters:
srcDir - the original directory's name
destDir - the new directory's name

updateFile

public void updateFile(long companyId,
                       long repositoryId,
                       long newRepositoryId,
                       String fileName)
                throws SystemException
Description copied from class: BaseStore
Moves a file to a new data repository.

Specified by:
updateFile in interface Store
Specified by:
updateFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository
newRepositoryId - the primary key of the new data repository
fileName - the file's name
Throws:
SystemException - if a system exception occurred

updateFile

public void updateFile(long companyId,
                       long repositoryId,
                       String fileName,
                       String newFileName)
                throws SystemException
Throws:
SystemException

updateFile

public void updateFile(long companyId,
                       long repositoryId,
                       String fileName,
                       String versionLabel,
                       InputStream is)
                throws SystemException
Description copied from class: BaseStore
Updates a file based on an InputStream object.

Specified by:
updateFile in interface Store
Specified by:
updateFile in class BaseStore
Parameters:
companyId - the primary key of the company
repositoryId - the primary key of the data repository (optionally CompanyConstants#SYSTEM)
fileName - the file name
versionLabel - the file's new version label
is - the new file's data
Throws:
SystemException - if a system exception occurred

cleanUpTempFiles

protected void cleanUpTempFiles()

cleanUpTempFiles

protected void cleanUpTempFiles(File file,
                                long lastModified)

getAWSCredentials

protected org.jets3t.service.security.AWSCredentials getAWSCredentials()
                                                                throws org.jets3t.service.S3ServiceException
Throws:
org.jets3t.service.S3ServiceException

getFileName

protected String getFileName(String key)

getFileNames

protected String[] getFileNames(org.jets3t.service.model.S3Object[] s3Objects)

getHeadVersionLabel

protected String getHeadVersionLabel(long companyId,
                                     long repositoryId,
                                     String fileName)
                              throws PortalException,
                                     org.jets3t.service.S3ServiceException
Throws:
PortalException
org.jets3t.service.S3ServiceException

getKey

protected String getKey(long companyId,
                        long repositoryId)

getKey

protected String getKey(long companyId,
                        long repositoryId,
                        String fileName)

getKey

protected String getKey(long companyId,
                        long repositoryId,
                        String fileName,
                        String versionLabel)

getNormalizedFileName

protected String getNormalizedFileName(String fileName)

getS3Bucket

protected org.jets3t.service.model.S3Bucket getS3Bucket()
                                                 throws org.jets3t.service.S3ServiceException
Throws:
org.jets3t.service.S3ServiceException

getS3Service

protected org.jets3t.service.S3Service getS3Service()
                                             throws org.jets3t.service.S3ServiceException
Throws:
org.jets3t.service.S3ServiceException

getTempFile

protected File getTempFile(org.jets3t.service.model.S3Object s3Object,
                           String fileName)
                    throws IOException,
                           org.jets3t.service.ServiceException
Throws:
IOException
org.jets3t.service.ServiceException

Liferay 6.1.2-ce-ga3