Package com.hierynomus.smbj.share
Class DiskShare
- java.lang.Object
-
- com.hierynomus.smbj.share.Share
-
- com.hierynomus.smbj.share.DiskShare
-
- All Implemented Interfaces:
java.lang.AutoCloseable
public class DiskShare extends Share
-
-
Field Summary
-
Fields inherited from class com.hierynomus.smbj.share.Share
session, smbPath, treeConnect
-
-
Constructor Summary
Constructors Constructor Description DiskShare(SmbPath smbPath, TreeConnect treeConnect, PathResolver pathResolver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
deleteOnClose(SMB2FileId fileId)
boolean
fileExists(java.lang.String path)
File in the given path exists or notboolean
folderExists(java.lang.String path)
Folder in the given path exists or not.protected StatusHandler
getCreateStatusHandler()
protected DiskEntry
getDiskEntry(com.hierynomus.smbj.share.DiskShare.SMB2CreateResponseContext responseContext)
FileAllInformation
getFileInformation(SMB2FileId fileId)
Get information for a given fileId<F extends FileQueryableInformation>
FgetFileInformation(SMB2FileId fileId, java.lang.Class<F> informationClass)
FileAllInformation
getFileInformation(java.lang.String path)
Get information about the given path.<F extends FileQueryableInformation>
FgetFileInformation(java.lang.String path, java.lang.Class<F> informationClass)
Get information about the given path.SecurityDescriptor
getSecurityInfo(SMB2FileId fileId, java.util.Set<SecurityInformation> securityInfo)
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileIdSecurityDescriptor
getSecurityInfo(java.lang.String path, java.util.Set<SecurityInformation> securityInfo)
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given PathShareInfo
getShareInformation()
Get Share Information for the current Disk Sharejava.util.List<FileIdBothDirectoryInformation>
list(java.lang.String path)
Equivalent to callinglist(path, FileIdBothDirectoryInformation.class, null, null)
.<I extends FileDirectoryQueryableInformation>
java.util.List<I>list(java.lang.String path, java.lang.Class<I> informationClass)
Equivalent to callinglist(path, informationClass, null, null)
.<I extends FileDirectoryQueryableInformation>
java.util.List<I>list(java.lang.String path, java.lang.Class<I> informationClass, java.lang.String searchPattern, java.util.EnumSet<AccessMask> accessMask)
Opens the given path for read-only access and performs a directory listing.java.util.List<FileIdBothDirectoryInformation>
list(java.lang.String path, java.lang.String searchPattern)
Equivalent to callinglist(path, FileIdBothDirectoryInformation.class, searchPattern, null)
.void
mkdir(java.lang.String path)
Create a directory in the given path.DiskEntry
open(java.lang.String path, java.util.Set<AccessMask> accessMask, java.util.Set<FileAttributes> attributes, java.util.Set<SMB2ShareAccess> shareAccesses, SMB2CreateDisposition createDisposition, java.util.Set<SMB2CreateOptions> createOptions)
Directory
openDirectory(java.lang.String path, java.util.Set<AccessMask> accessMask, java.util.Set<FileAttributes> attributes, java.util.Set<SMB2ShareAccess> shareAccesses, SMB2CreateDisposition createDisposition, java.util.Set<SMB2CreateOptions> createOptions)
Get a handle to a directory in the given pathFile
openFile(java.lang.String path, java.util.Set<AccessMask> accessMask, java.util.Set<FileAttributes> attributes, java.util.Set<SMB2ShareAccess> shareAccesses, SMB2CreateDisposition createDisposition, java.util.Set<SMB2CreateOptions> createOptions)
void
rm(java.lang.String path)
Remove the file at the given pathvoid
rmdir(java.lang.String path, boolean recursive)
Remove the directory at the given path.<F extends FileSettableInformation>
voidsetFileInformation(SMB2FileId fileId, F information)
<F extends FileSettableInformation>
voidsetFileInformation(java.lang.String path, F information)
Get information for a given pathvoid
setSecurityInfo(SMB2FileId fileId, java.util.Set<SecurityInformation> securityInfo, SecurityDescriptor securityDescriptor)
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileIdvoid
setSecurityInfo(java.lang.String path, java.util.Set<SecurityInformation> securityInfo, SecurityDescriptor securityDescriptor)
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileIdjava.lang.String
toString()
-
Methods inherited from class com.hierynomus.smbj.share.Share
close, equals, getSmbPath, getTreeConnect, hashCode, ioctl, ioctl, ioctl, ioctlAsync, isConnected
-
-
-
-
Constructor Detail
-
DiskShare
public DiskShare(SmbPath smbPath, TreeConnect treeConnect, PathResolver pathResolver)
-
-
Method Detail
-
open
public DiskEntry open(java.lang.String path, java.util.Set<AccessMask> accessMask, java.util.Set<FileAttributes> attributes, java.util.Set<SMB2ShareAccess> shareAccesses, SMB2CreateDisposition createDisposition, java.util.Set<SMB2CreateOptions> createOptions)
-
getCreateStatusHandler
protected StatusHandler getCreateStatusHandler()
- Overrides:
getCreateStatusHandler
in classShare
-
getDiskEntry
protected DiskEntry getDiskEntry(com.hierynomus.smbj.share.DiskShare.SMB2CreateResponseContext responseContext)
-
openDirectory
public Directory openDirectory(java.lang.String path, java.util.Set<AccessMask> accessMask, java.util.Set<FileAttributes> attributes, java.util.Set<SMB2ShareAccess> shareAccesses, SMB2CreateDisposition createDisposition, java.util.Set<SMB2CreateOptions> createOptions)
Get a handle to a directory in the given path
-
openFile
public File openFile(java.lang.String path, java.util.Set<AccessMask> accessMask, java.util.Set<FileAttributes> attributes, java.util.Set<SMB2ShareAccess> shareAccesses, SMB2CreateDisposition createDisposition, java.util.Set<SMB2CreateOptions> createOptions)
-
fileExists
public boolean fileExists(java.lang.String path) throws SMBApiException
File in the given path exists or not- Throws:
SMBApiException
-
folderExists
public boolean folderExists(java.lang.String path) throws SMBApiException
Folder in the given path exists or not.- Throws:
SMBApiException
-
list
public java.util.List<FileIdBothDirectoryInformation> list(java.lang.String path) throws SMBApiException
Equivalent to callinglist(path, FileIdBothDirectoryInformation.class, null, null)
.- Throws:
SMBApiException
- See Also:
#list(String, Class, String, EnumSet
)
-
list
public java.util.List<FileIdBothDirectoryInformation> list(java.lang.String path, java.lang.String searchPattern) throws SMBApiException
Equivalent to callinglist(path, FileIdBothDirectoryInformation.class, searchPattern, null)
.- Throws:
SMBApiException
- See Also:
#list(String, Class, String, EnumSet
)
-
list
public <I extends FileDirectoryQueryableInformation> java.util.List<I> list(java.lang.String path, java.lang.Class<I> informationClass)
Equivalent to callinglist(path, informationClass, null, null)
.- See Also:
#list(String, Class, String, EnumSet
)
-
list
public <I extends FileDirectoryQueryableInformation> java.util.List<I> list(java.lang.String path, java.lang.Class<I> informationClass, java.lang.String searchPattern, java.util.EnumSet<AccessMask> accessMask)
Opens the given path for read-only access and performs a directory listing.- See Also:
Directory.iterator(Class, String)
-
mkdir
public void mkdir(java.lang.String path) throws SMBApiException
Create a directory in the given path.- Throws:
SMBApiException
-
getFileInformation
public FileAllInformation getFileInformation(java.lang.String path) throws SMBApiException
Get information about the given path.- Throws:
SMBApiException
-
getFileInformation
public <F extends FileQueryableInformation> F getFileInformation(java.lang.String path, java.lang.Class<F> informationClass) throws SMBApiException
Get information about the given path.- Throws:
SMBApiException
-
getFileInformation
public FileAllInformation getFileInformation(SMB2FileId fileId) throws SMBApiException
Get information for a given fileId- Throws:
SMBApiException
-
getFileInformation
public <F extends FileQueryableInformation> F getFileInformation(SMB2FileId fileId, java.lang.Class<F> informationClass) throws SMBApiException
- Throws:
SMBApiException
-
setFileInformation
public <F extends FileSettableInformation> void setFileInformation(SMB2FileId fileId, F information)
-
setFileInformation
public <F extends FileSettableInformation> void setFileInformation(java.lang.String path, F information) throws SMBApiException
Get information for a given path- Throws:
SMBApiException
-
getShareInformation
public ShareInfo getShareInformation() throws SMBApiException
Get Share Information for the current Disk Share- Returns:
- the ShareInfo
- Throws:
SMBApiException
-
rmdir
public void rmdir(java.lang.String path, boolean recursive) throws SMBApiException
Remove the directory at the given path.- Throws:
SMBApiException
-
rm
public void rm(java.lang.String path) throws SMBApiException
Remove the file at the given path- Throws:
SMBApiException
-
deleteOnClose
public void deleteOnClose(SMB2FileId fileId)
-
getSecurityInfo
public SecurityDescriptor getSecurityInfo(java.lang.String path, java.util.Set<SecurityInformation> securityInfo) throws SMBApiException
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given Path- Throws:
SMBApiException
-
getSecurityInfo
public SecurityDescriptor getSecurityInfo(SMB2FileId fileId, java.util.Set<SecurityInformation> securityInfo) throws SMBApiException
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileId- Throws:
SMBApiException
-
setSecurityInfo
public void setSecurityInfo(java.lang.String path, java.util.Set<SecurityInformation> securityInfo, SecurityDescriptor securityDescriptor) throws SMBApiException
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileId- Throws:
SMBApiException
-
setSecurityInfo
public void setSecurityInfo(SMB2FileId fileId, java.util.Set<SecurityInformation> securityInfo, SecurityDescriptor securityDescriptor) throws SMBApiException
The SecurityDescriptor(MS-DTYP 2.4.6 SECURITY_DESCRIPTOR) for the Given FileId- Throws:
SMBApiException
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-