|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.alfresco.filesys.alfresco.AlfrescoDiskDriver
org.alfresco.filesys.avm.AVMDiskDriver
public class AVMDiskDriver
AVM Repository Filesystem Driver Class
Provides a filesystem interface for various protocols such as SMB/CIFS and FTP.
Field Summary | |
---|---|
static char |
AVM_SEPERATOR
|
static java.lang.String |
AVM_SEPERATOR_STR
|
static java.lang.String |
RoleContentManager
|
static java.lang.String |
RoleNotWebAuthor
|
static java.lang.String |
RoleWebProject
|
Constructor Summary | |
---|---|
AVMDiskDriver()
Default constructor |
Method Summary | |
---|---|
protected void |
addNewStore(AVMContext avmCtx,
java.lang.String storeName)
Add a new store to the top level folder list |
protected AVMPath |
buildStorePath(AVMContext ctx,
java.lang.String path,
org.alfresco.jlan.server.SrvSession sess)
Build the full store path for a file/folder using the share relative path |
void |
closeFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.NetworkFile file)
Close the file. |
org.alfresco.jlan.server.core.DeviceContext |
createContext(java.lang.String shareName,
org.springframework.extensions.config.ConfigElement cfg)
Parse and validate the parameter string and create a device context object for this instance of the shared device. |
void |
createDirectory(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.FileOpenParams params)
Create a new directory on this file system. |
org.alfresco.jlan.server.filesys.NetworkFile |
createFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.FileOpenParams params)
Create a new file on the file system. |
void |
deleteDirectory(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String dir)
Delete the directory from the filesystem. |
void |
deleteFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String name)
Delete the specified file. |
int |
fileExists(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String name)
Check if the specified file exists, and whether it is a file or directory. |
protected org.alfresco.jlan.server.filesys.cache.FileState |
findPseudoState(AVMPath avmPath,
AVMContext avmCtx)
Find the file state for a pseudo folder path |
void |
flushFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.NetworkFile file)
Flush any buffered output for the specified file. |
AuthenticationService |
getAuthenticationService()
Return the authentication service |
AVMService |
getAvmService()
Return the AVM service |
org.alfresco.jlan.util.StringList |
getAVMStoreNames()
Return a list of the available AVM store names |
protected java.util.Map |
getAVMStoreProperties(java.lang.String storeName)
Get the properties for a store |
org.alfresco.jlan.server.filesys.FileInfo |
getFileInformation(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String name)
Get the file information for the specified file. |
boolean |
isReadOnly(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.core.DeviceContext ctx)
Determine if the disk device is read-only. |
org.alfresco.jlan.server.filesys.NetworkFile |
openFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.FileOpenParams params)
Open a file on the file system. |
int |
readFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.NetworkFile file,
byte[] buf,
int bufPos,
int siz,
long filePos)
Read a block of data from the specified file. |
void |
registerContext(org.alfresco.jlan.server.core.DeviceContext ctx)
Register a device context object for this instance of the shared device. |
void |
renameFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String oldName,
java.lang.String newName)
Rename the specified file. |
long |
seekFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.NetworkFile file,
long pos,
int typ)
Seek to the specified file position. |
void |
setAuthenticationComponent(AuthenticationComponent authComponent)
Set the authentication component |
void |
setAuthenticationService(AuthenticationService authService)
Set the authentication service |
void |
setAvmService(AVMService avmService)
Set the AVM service |
void |
setCreateStoreListener(CreateStoreTxnListener createStoreListener)
Set the create store listener |
void |
setCreateVersionListener(CreateVersionTxnListener createVersionListener)
Set the create version listener |
void |
setFileInformation(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String name,
org.alfresco.jlan.server.filesys.FileInfo info)
Set the file information for the specified file. |
void |
setMimetypeService(MimetypeService mimetypeService)
Set the mimetype service |
void |
setNodeService(NodeService nodeService)
Set the node service |
void |
setPurgeStoreListener(PurgeStoreTxnListener purgeStoreListener)
Set the purge store listener |
void |
setPurgeVersionListener(PurgeVersionTxnListener purgeVersionListener)
Set the purge version listener |
void |
setWebProjectStore(java.lang.String webStore)
Set the web project store |
org.alfresco.jlan.server.filesys.SearchContext |
startSearch(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
java.lang.String searchPath,
int attrib)
Start a new search on the filesystem using the specified searchPath that may contain wildcards. |
void |
treeClosed(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree)
Connection opened to this disk device |
void |
treeOpened(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree)
Connection closed to this device |
void |
truncateFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.NetworkFile file,
long siz)
Truncate a file to the specified size |
int |
writeFile(org.alfresco.jlan.server.SrvSession sess,
org.alfresco.jlan.server.filesys.TreeConnection tree,
org.alfresco.jlan.server.filesys.NetworkFile file,
byte[] buf,
int bufoff,
int siz,
long fileoff)
Write a block of data to the file. |
Methods inherited from class org.alfresco.filesys.alfresco.AlfrescoDiskDriver |
---|
beginReadTransaction, beginWriteTransaction, doInWriteTransaction, endTransaction, getServiceRegistry, getTransactionService, processIOControl, setServiceRegistry, setTransactionService |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final char AVM_SEPERATOR
public static final java.lang.String AVM_SEPERATOR_STR
public static final java.lang.String RoleContentManager
public static final java.lang.String RoleWebProject
public static final java.lang.String RoleNotWebAuthor
Constructor Detail |
---|
public AVMDiskDriver()
Method Detail |
---|
public final AVMService getAvmService()
public final AuthenticationService getAuthenticationService()
public void setAvmService(AVMService avmService)
avmService
- AVMServicepublic void setAuthenticationComponent(AuthenticationComponent authComponent)
authComponent
- AuthenticationComponentpublic void setAuthenticationService(AuthenticationService authService)
authService
- AuthenticationServicepublic void setMimetypeService(MimetypeService mimetypeService)
mimetypeService
- MimetypeServicepublic void setNodeService(NodeService nodeService)
nodeService
- NodeServicepublic void setCreateStoreListener(CreateStoreTxnListener createStoreListener)
createStoreListener
- CreateStoreTxnListenerpublic void setPurgeStoreListener(PurgeStoreTxnListener purgeStoreListener)
purgeStoreListener
- PurgeStoreTxnListenerpublic void setCreateVersionListener(CreateVersionTxnListener createVersionListener)
createVersionListener
- CreateVersionTxnListenerpublic void setPurgeVersionListener(PurgeVersionTxnListener purgeVersionListener)
purgeVersionListener
- PurgeVersionTxnListenerpublic void setWebProjectStore(java.lang.String webStore)
webStore
- Stringpublic org.alfresco.jlan.server.core.DeviceContext createContext(java.lang.String shareName, org.springframework.extensions.config.ConfigElement cfg) throws org.alfresco.jlan.server.core.DeviceContextException
createContext
in interface org.alfresco.jlan.server.core.DeviceInterface
shareName
- Stringcfg
- ConfigElement
org.alfresco.jlan.server.core.DeviceContextException
public void registerContext(org.alfresco.jlan.server.core.DeviceContext ctx) throws org.alfresco.jlan.server.core.DeviceContextException
registerContext
in interface ExtendedDiskInterface
registerContext
in class AlfrescoDiskDriver
context
- the device context
org.alfresco.jlan.server.core.DeviceContextException
public final org.alfresco.jlan.util.StringList getAVMStoreNames()
protected final java.util.Map getAVMStoreProperties(java.lang.String storeName)
storeName
- String
protected final AVMPath buildStorePath(AVMContext ctx, java.lang.String path, org.alfresco.jlan.server.SrvSession sess) throws org.alfresco.jlan.server.filesys.AccessDeniedException
ctx
- AVMContextpath
- Stringsess
- SrvSession
org.alfresco.jlan.server.filesys.AccessDeniedException
public void closeFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.NetworkFile file) throws java.io.IOException
closeFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connection.file
- Network file context.
java.io.IOException
- If an error occurs.public void createDirectory(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.FileOpenParams params) throws java.io.IOException
createDirectory
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connection.params
- Directory create parameters
java.io.IOException
- If an error occurs.public org.alfresco.jlan.server.filesys.NetworkFile createFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.FileOpenParams params) throws java.io.IOException
createFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionparams
- File create parameters
java.io.IOException
- If an error occurs.public void deleteDirectory(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String dir) throws java.io.IOException
deleteDirectory
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectiondir
- Directory name.
java.io.IOException
- The exception description.public void deleteFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String name) throws java.io.IOException
deleteFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionfile
- NetworkFile
java.io.IOException
- The exception description.public int fileExists(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String name)
fileExists
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionname
- java.lang.String
FileStatus
public void flushFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.NetworkFile file) throws java.io.IOException
flushFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionfile
- Network file context.
java.io.IOException
- The exception description.public org.alfresco.jlan.server.filesys.FileInfo getFileInformation(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String name) throws java.io.IOException
getFileInformation
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionname
- File name/path that information is required for.
java.io.IOException
- The exception description.public boolean isReadOnly(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.core.DeviceContext ctx) throws java.io.IOException
isReadOnly
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessionctx
- Device context
java.io.IOException
- If an error occurs.public org.alfresco.jlan.server.filesys.NetworkFile openFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.FileOpenParams params) throws java.io.IOException
openFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionparams
- File open parameters
java.io.IOException
- If an error occurs.public int readFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.NetworkFile file, byte[] buf, int bufPos, int siz, long filePos) throws java.io.IOException
readFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Session detailstree
- Tree connectionfile
- Network filebuf
- Buffer to return data tobufPos
- Starting position in the return buffersiz
- Maximum size of data to returnfilePos
- File offset to read data
java.io.IOException
- The exception description.public void renameFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String oldName, java.lang.String newName) throws java.io.IOException
renameFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionoldName
- java.lang.StringnewName
- java.lang.String
java.io.IOException
- The exception description.public long seekFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.NetworkFile file, long pos, int typ) throws java.io.IOException
seekFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionfile
- Network file.pos
- Position to seek to.typ
- Seek type.
java.io.IOException
public void setFileInformation(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String name, org.alfresco.jlan.server.filesys.FileInfo info) throws java.io.IOException
setFileInformation
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionname
- java.lang.Stringinfo
- FileInfo
java.io.IOException
- The exception description.public org.alfresco.jlan.server.filesys.SearchContext startSearch(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, java.lang.String searchPath, int attrib) throws java.io.FileNotFoundException
startSearch
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionsearchPath
- File(s) to search for, may include wildcards.attrib
- Attributes of the file(s) to search for, see class SMBFileAttribute.
java.io.FileNotFoundException
- If the search could not be started.public void truncateFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.NetworkFile file, long siz) throws java.io.IOException
truncateFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionfile
- Network file detailssiz
- New file length
java.io.IOException
- The exception description.public int writeFile(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree, org.alfresco.jlan.server.filesys.NetworkFile file, byte[] buf, int bufoff, int siz, long fileoff) throws java.io.IOException
writeFile
in interface org.alfresco.jlan.server.filesys.DiskInterface
sess
- Server sessiontree
- Tree connectionfile
- Network file detailsbuf
- byte[] Data to be writtenbufoff
- Offset within the buffer that the data startssiz
- int Data lengthfileoff
- Position within the file that the data is to be written.
java.io.IOException
- The exception description.public void treeClosed(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree)
treeClosed
in interface org.alfresco.jlan.server.core.DeviceInterface
sess
- Server sessiontree
- Tree connectionpublic void treeOpened(org.alfresco.jlan.server.SrvSession sess, org.alfresco.jlan.server.filesys.TreeConnection tree)
treeOpened
in interface org.alfresco.jlan.server.core.DeviceInterface
sess
- Server sessiontree
- Tree connectionprotected final org.alfresco.jlan.server.filesys.cache.FileState findPseudoState(AVMPath avmPath, AVMContext avmCtx)
avmPath
- AVMPathavmCtx
- AVMContext
protected void addNewStore(AVMContext avmCtx, java.lang.String storeName)
avmCtx
- AVMContextstoreName
- String
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |