public class DLStoreUtil
extends Object
portal.properties
under the
property dl.store.impl
. Virus checking can also be enabled under
the property dl.store.antivirus.impl
.
The main client for this class is the Document Library portlet. It is also
used by other portlets like Wiki and Message Boards to store file
attachments. For the Document Library portlet, the repositoryId
can be obtained by calling com.liferay.portlet.documentlibrary.model.DLFolderConstants#getDataRepositoryId(
long,long)
. For all other portlets, the repositoryId
should be
set to CompanyConstants.SYSTEM
. These
methods can be used in plugins and other portlets, as shown below.
long repositoryId = CompanyConstants.SYSTEM;
String dirName = "portlet_name/1234";
try {
DLStoreUtil.addDirectory(companyId, repositoryId, dirName);
}
catch (PortalException pe) {
}
DLStoreUtil.addFile(
companyId, repositoryId, dirName + "/" + fileName, file);
DLStoreImpl
Constructor and Description |
---|
DLStoreUtil() |
Modifier and Type | Method and Description |
---|---|
static void |
addFile(DLStoreRequest dlStoreRequest,
byte[] bytes) |
static void |
addFile(DLStoreRequest dlStoreRequest,
File file) |
static void |
addFile(DLStoreRequest dlStoreRequest,
InputStream inputStream) |
static void |
copyFileVersion(long companyId,
long repositoryId,
String fileName,
String fromVersionLabel,
String toVersionLabel)
Creates a new copy of the file version.
|
static void |
deleteDirectory(long companyId,
long repositoryId,
String dirName)
Deletes a directory.
|
static void |
deleteFile(long companyId,
long repositoryId,
String fileName)
Deletes a file.
|
static void |
deleteFile(long companyId,
long repositoryId,
String fileName,
String versionLabel)
Deletes a file at a particular version.
|
static InputStream |
getFileAsStream(long companyId,
long repositoryId,
String fileName,
String versionLabel)
Returns the file as an
InputStream object. |
static String[] |
getFileNames(long companyId,
long repositoryId,
String dirName)
Returns all files of the directory.
|
static long |
getFileSize(long companyId,
long repositoryId,
String fileName)
Returns the size of the file.
|
static DLStore |
getStore()
Returns the
DLStore object. |
static boolean |
hasFile(long companyId,
long repositoryId,
String fileName,
String versionLabel)
Returns
true if the file exists. |
void |
setStore(DLStore store) |
static void |
updateFile(DLStoreRequest dlStoreRequest,
File file) |
static void |
updateFile(DLStoreRequest dlStoreRequest,
InputStream inputStream) |
static void |
updateFile(long companyId,
long repositoryId,
long newRepositoryId,
String fileName)
Moves a file to a new data repository.
|
static void |
updateFileVersion(long companyId,
long repositoryId,
String fileName,
String fromVersionLabel,
String toVersionLabel)
Update's a file version label.
|
public static void addFile(DLStoreRequest dlStoreRequest, byte[] bytes) throws PortalException
PortalException
public static void addFile(DLStoreRequest dlStoreRequest, File file) throws PortalException
PortalException
public static void addFile(DLStoreRequest dlStoreRequest, InputStream inputStream) throws PortalException
PortalException
public static void copyFileVersion(long companyId, long repositoryId, String fileName, String fromVersionLabel, String toVersionLabel) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the original's file namefromVersionLabel
- the original file's version labeltoVersionLabel
- the new version labelPortalException
public static void deleteDirectory(long companyId, long repositoryId, String dirName) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)dirName
- the directory's namePortalException
public static void deleteFile(long companyId, long repositoryId, String fileName) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the file's namePortalException
public static void deleteFile(long companyId, long repositoryId, String fileName, String versionLabel) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the file's nameversionLabel
- the file's version labelPortalException
public static InputStream getFileAsStream(long companyId, long repositoryId, String fileName, String versionLabel) throws PortalException
InputStream
object.
If using an S3 store, it is preferable for performance reasons to use
this method to get the file as an InputStream
instead of using
other methods to get the file as a File
.
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the file's nameversionLabel
- the file's version labelInputStream
object with the file's namePortalException
public static String[] getFileNames(long companyId, long repositoryId, String dirName) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)dirName
- the directory's namePortalException
public static long getFileSize(long companyId, long repositoryId, String fileName) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the file's namePortalException
public static DLStore getStore()
DLStore
object. Used primarily by Spring and should
not be used by the client.DLStore
objectpublic static boolean hasFile(long companyId, long repositoryId, String fileName, String versionLabel) throws PortalException
true
if the file exists.companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the file's nameversionLabel
- the file's version labeltrue
if the file exists; false
otherwisePortalException
public static void updateFile(DLStoreRequest dlStoreRequest, File file) throws PortalException
PortalException
public static void updateFile(DLStoreRequest dlStoreRequest, InputStream inputStream) throws PortalException
PortalException
public static void updateFile(long companyId, long repositoryId, long newRepositoryId, String fileName) throws PortalException
companyId
- the primary key of the companyrepositoryId
- the primary key of the data repositorynewRepositoryId
- the primary key of the new data repositoryfileName
- the file's namePortalException
public static void updateFileVersion(long companyId, long repositoryId, String fileName, String fromVersionLabel, String toVersionLabel) throws PortalException
copyFileVersion(long,
long, String, String, String)
except that the old file version is
deleted.companyId
- the primary key of the companyrepositoryId
- the primary key of the data repository (optionally
CompanyConstants.SYSTEM
)fileName
- the file's namefromVersionLabel
- the file's version labeltoVersionLabel
- the file's new version labelPortalException
public void setStore(DLStore store)