Documentation ¶
Index ¶
- Constants
- type CacheConfig
- type ConnectionConfig
- type Entry
- type EntryType
- type FileHandle
- func (handle *FileHandle) Close() error
- func (handle *FileHandle) GetEntry() *Entry
- func (handle *FileHandle) GetID() string
- func (handle *FileHandle) GetIRODSFileHandle() *types.IRODSFileHandle
- func (handle *FileHandle) GetOffset() int64
- func (handle *FileHandle) GetOpenMode() types.FileOpenMode
- func (handle *FileHandle) IsReadMode() bool
- func (handle *FileHandle) IsReadOnlyMode() bool
- func (handle *FileHandle) IsWriteMode() bool
- func (handle *FileHandle) IsWriteOnlyMode() bool
- func (handle *FileHandle) Lock()
- func (handle *FileHandle) LockDataObject(wait bool) error
- func (handle *FileHandle) RLockDataObject(wait bool) error
- func (handle *FileHandle) Read(buffer []byte) (int, error)
- func (handle *FileHandle) ReadAt(buffer []byte, offset int64) (int, error)
- func (handle *FileHandle) Seek(offset int64, whence int) (int64, error)
- func (handle *FileHandle) ToString() string
- func (handle *FileHandle) Truncate(size int64) error
- func (handle *FileHandle) Unlock()
- func (handle *FileHandle) UnlockDataObject() error
- func (handle *FileHandle) Write(data []byte) (int, error)
- func (handle *FileHandle) WriteAt(data []byte, offset int64) (int, error)
- type FileHandleMap
- func (fileHandleMap *FileHandleMap) Add(handle *FileHandle)
- func (fileHandleMap *FileHandleMap) AddCloseEventHandler(path string, handler FileHandleMapEventHandler) string
- func (fileHandleMap *FileHandleMap) Clear()
- func (fileHandleMap *FileHandleMap) Get(id string) *FileHandle
- func (fileHandleMap *FileHandleMap) List() []*FileHandle
- func (fileHandleMap *FileHandleMap) ListByPath(path string) []*FileHandle
- func (fileHandleMap *FileHandleMap) ListPathsInDir(parentPath string) []string
- func (fileHandleMap *FileHandleMap) Pop(id string) *FileHandle
- func (fileHandleMap *FileHandleMap) PopAll() []*FileHandle
- func (fileHandleMap *FileHandleMap) PopByPath(path string) []*FileHandle
- func (fileHandleMap *FileHandleMap) Remove(id string)
- func (fileHandleMap *FileHandleMap) RemoveCloseEventHandler(handlerID string)
- type FileHandleMapEventHandler
- type FileHandleMapEventHandlerWrap
- type FileLock
- type FileLocks
- func (mgr *FileLocks) Lock(path string)
- func (mgr *FileLocks) LockFilesForPrefix(pathPrefix string) []string
- func (mgr *FileLocks) RLock(path string)
- func (mgr *FileLocks) RUnlock(path string) error
- func (mgr *FileLocks) Unlock(path string) error
- func (mgr *FileLocks) UnlockFiles(paths []string) error
- type FileSystem
- func (fs *FileSystem) AddCacheEventHandler(handler FilesystemCacheEventHandler) string
- func (fs *FileSystem) AddMetadata(irodsPath string, attName string, attValue string, attUnits string) error
- func (fs *FileSystem) AddResourceMetadata(resource string, attName, attValue, attUnits string) error
- func (fs *FileSystem) AddTicketAllowedGroup(ticketName string, groupName string) error
- func (fs *FileSystem) AddTicketAllowedHost(ticketName string, host string) error
- func (fs *FileSystem) AddTicketAllowedUser(ticketName string, userName string) error
- func (fs *FileSystem) AddUserMetadata(user string, attName, attValue, attUnits string) error
- func (fs *FileSystem) ClearCache()
- func (fs *FileSystem) ClearTicketExpirationTime(ticketName string) error
- func (fs *FileSystem) ClearTicketUseLimit(ticketName string) error
- func (fs *FileSystem) ClearTicketWriteByteLimit(ticketName string) error
- func (fs *FileSystem) ClearTicketWriteFileLimit(ticketName string) error
- func (fs *FileSystem) ConnectionTotal() int
- func (fs *FileSystem) CopyFile(srcPath string, destPath string, force bool) error
- func (fs *FileSystem) CopyFileToFile(srcPath string, destPath string, force bool) error
- func (fs *FileSystem) CreateFile(path string, resource string, mode string) (*FileHandle, error)
- func (fs *FileSystem) CreateTicket(ticketName string, ticketType types.TicketType, path string) error
- func (fs *FileSystem) DeleteMetadata(irodsPath string, avuid int64) error
- func (fs *FileSystem) DeleteMetadataByName(irodsPath string, attName string) error
- func (fs *FileSystem) DeleteResourceMetadata(resource string, avuid int64) error
- func (fs *FileSystem) DeleteResourceMetadataByName(resource string, attName string) error
- func (fs *FileSystem) DeleteTicket(ticketName string) error
- func (fs *FileSystem) DeleteUserMetadata(user string, avuid int64) error
- func (fs *FileSystem) DeleteUserMetadataByName(user string, attName string) error
- func (fs *FileSystem) DownloadFile(irodsPath string, resource string, localPath string, verifyChecksum bool, ...) (*FileTransferResult, error)
- func (fs *FileSystem) DownloadFileParallel(irodsPath string, resource string, localPath string, taskNum int, ...) (*FileTransferResult, error)
- func (fs *FileSystem) DownloadFileParallelResumable(irodsPath string, resource string, localPath string, taskNum int, ...) (*FileTransferResult, error)
- func (fs *FileSystem) DownloadFileRedirectToResource(irodsPath string, resource string, localPath string, taskNum int, ...) (*FileTransferResult, error)
- func (fs *FileSystem) DownloadFileResumable(irodsPath string, resource string, localPath string, verifyChecksum bool, ...) (*FileTransferResult, error)
- func (fs *FileSystem) DownloadFileToBuffer(irodsPath string, resource string, buffer *bytes.Buffer, verifyChecksum bool, ...) (*FileTransferResult, error)
- func (fs *FileSystem) Exists(path string) bool
- func (fs *FileSystem) ExistsDir(path string) bool
- func (fs *FileSystem) ExistsFile(path string) bool
- func (fs *FileSystem) ExtractStructFile(path string, targetCollection string, resource string, dataType types.DataType, ...) error
- func (fs *FileSystem) GetDirACLInheritance(path string) (*types.IRODSAccessInheritance, error)
- func (fs *FileSystem) GetID() string
- func (fs *FileSystem) GetIOConnection() (*connection.IRODSConnection, error)
- func (fs *FileSystem) GetMetadataConnection() (*connection.IRODSConnection, error)
- func (fs *FileSystem) GetMetrics() *metrics.IRODSMetrics
- func (fs *FileSystem) GetServerVersion() (*types.IRODSVersion, error)
- func (fs *FileSystem) GetTicket(ticketName string) (*types.IRODSTicket, error)
- func (fs *FileSystem) GetTicketForAnonymousAccess(ticketName string) (*types.IRODSTicketForAnonymousAccess, error)
- func (fs *FileSystem) GetTicketRestrictions(ticketID int64) (*IRODSTicketRestrictions, error)
- func (fs *FileSystem) List(path string) ([]*Entry, error)
- func (fs *FileSystem) ListACLs(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListACLsForEntries(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListACLsWithGroupUsers(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListAllProcesses() ([]*types.IRODSProcess, error)
- func (fs *FileSystem) ListDirACLs(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListDirACLsWithGroupUsers(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListFileACLs(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListFileACLsWithGroupUsers(path string) ([]*types.IRODSAccess, error)
- func (fs *FileSystem) ListGroupUsers(group string) ([]*types.IRODSUser, error)
- func (fs *FileSystem) ListGroups() ([]*types.IRODSUser, error)
- func (fs *FileSystem) ListMetadata(path string) ([]*types.IRODSMeta, error)
- func (fs *FileSystem) ListProcesses(address string, zone string) ([]*types.IRODSProcess, error)
- func (fs *FileSystem) ListResourceMetadata(resource string) ([]*types.IRODSMeta, error)
- func (fs *FileSystem) ListTicketHostRestrictions(ticketID int64) ([]string, error)
- func (fs *FileSystem) ListTicketUserGroupRestrictions(ticketID int64) ([]string, error)
- func (fs *FileSystem) ListTicketUserNameRestrictions(ticketID int64) ([]string, error)
- func (fs *FileSystem) ListTickets() ([]*types.IRODSTicket, error)
- func (fs *FileSystem) ListTicketsBasic() ([]*types.IRODSTicket, error)
- func (fs *FileSystem) ListUserGroups(user string) ([]*types.IRODSUser, error)
- func (fs *FileSystem) ListUserMetadata(user string) ([]*types.IRODSMeta, error)
- func (fs *FileSystem) ListUsers() ([]*types.IRODSUser, error)
- func (fs *FileSystem) MakeDir(path string, recurse bool) error
- func (fs *FileSystem) ModifyTicketExpirationTime(ticketName string, expirationTime time.Time) error
- func (fs *FileSystem) ModifyTicketUseLimit(ticketName string, uses int64) error
- func (fs *FileSystem) ModifyTicketWriteByteLimit(ticketName string, bytes int64) error
- func (fs *FileSystem) ModifyTicketWriteFileLimit(ticketName string, count int64) error
- func (fs *FileSystem) OpenFile(path string, resource string, mode string) (*FileHandle, error)
- func (fs *FileSystem) Release()
- func (fs *FileSystem) RemoveCacheEventHandler(handlerID string)
- func (fs *FileSystem) RemoveDir(path string, recurse bool, force bool) error
- func (fs *FileSystem) RemoveFile(path string, force bool) error
- func (fs *FileSystem) RemoveTicketAllowedGroup(ticketName string, groupName string) error
- func (fs *FileSystem) RemoveTicketAllowedHost(ticketName string, host string) error
- func (fs *FileSystem) RemoveTicketAllowedUser(ticketName string, userName string) error
- func (fs *FileSystem) RenameDir(srcPath string, destPath string) error
- func (fs *FileSystem) RenameDirToDir(srcPath string, destPath string) error
- func (fs *FileSystem) RenameFile(srcPath string, destPath string) error
- func (fs *FileSystem) RenameFileToFile(srcPath string, destPath string) error
- func (fs *FileSystem) ReplicateFile(path string, resource string, update bool) error
- func (fs *FileSystem) ReturnIOConnection(conn *connection.IRODSConnection) error
- func (fs *FileSystem) ReturnMetadataConnection(conn *connection.IRODSConnection) error
- func (fs *FileSystem) SearchByMeta(metaname string, metavalue string) ([]*Entry, error)
- func (fs *FileSystem) Stat(p string) (*Entry, error)
- func (fs *FileSystem) StatDir(path string) (*Entry, error)
- func (fs *FileSystem) StatFile(path string) (*Entry, error)
- func (fs *FileSystem) SupportParallelUpload() bool
- func (fs *FileSystem) Touch(irodsPath string, resource string, noCreate bool) error
- func (fs *FileSystem) TruncateFile(path string, size int64) error
- func (fs *FileSystem) UploadFile(localPath string, irodsPath string, resource string, replicate bool, ...) (*FileTransferResult, error)
- func (fs *FileSystem) UploadFileFromBuffer(buffer *bytes.Buffer, irodsPath string, resource string, replicate bool, ...) (*FileTransferResult, error)
- func (fs *FileSystem) UploadFileParallel(localPath string, irodsPath string, resource string, taskNum int, ...) (*FileTransferResult, error)
- func (fs *FileSystem) UploadFileParallelRedirectToResource(localPath string, irodsPath string, resource string, taskNum int, ...) (*FileTransferResult, error)
- type FileSystemCache
- func (cache *FileSystemCache) AddACLsCache(path string, accesses []*types.IRODSAccess)
- func (cache *FileSystemCache) AddACLsCacheMulti(accesses []*types.IRODSAccess)
- func (cache *FileSystemCache) AddDirCache(path string, entries []string)
- func (cache *FileSystemCache) AddEntryCache(entry *Entry)
- func (cache *FileSystemCache) AddGroupUsersCache(group string, users []*types.IRODSUser)
- func (cache *FileSystemCache) AddGroupsCache(groups []*types.IRODSUser)
- func (cache *FileSystemCache) AddMetadataCache(path string, metas []*types.IRODSMeta)
- func (cache *FileSystemCache) AddNegativeEntryCache(path string)
- func (cache *FileSystemCache) AddUserGroupsCache(user string, groups []*types.IRODSUser)
- func (cache *FileSystemCache) AddUsersCache(users []*types.IRODSUser)
- func (cache *FileSystemCache) ClearACLsCache()
- func (cache *FileSystemCache) ClearDirCache()
- func (cache *FileSystemCache) ClearEntryCache()
- func (cache *FileSystemCache) ClearMetadataCache()
- func (cache *FileSystemCache) ClearNegativeEntryCache()
- func (cache *FileSystemCache) GetACLsCache(path string) []*types.IRODSAccess
- func (cache *FileSystemCache) GetDirCache(path string) []string
- func (cache *FileSystemCache) GetEntryCache(path string) *Entry
- func (cache *FileSystemCache) GetGroupUsersCache(group string) []*types.IRODSUser
- func (cache *FileSystemCache) GetGroupsCache() []*types.IRODSUser
- func (cache *FileSystemCache) GetMetadataCache(path string) []*types.IRODSMeta
- func (cache *FileSystemCache) GetUserGroupsCache(user string) []*types.IRODSUser
- func (cache *FileSystemCache) GetUsersCache() []*types.IRODSUser
- func (cache *FileSystemCache) HasNegativeEntryCache(path string) bool
- func (cache *FileSystemCache) RemoveACLsCache(path string)
- func (cache *FileSystemCache) RemoveAllNegativeEntryCacheForPath(path string)
- func (cache *FileSystemCache) RemoveDirCache(path string)
- func (cache *FileSystemCache) RemoveEntryCache(path string)
- func (cache *FileSystemCache) RemoveGroupUsersCache(group string)
- func (cache *FileSystemCache) RemoveGroupsCache()
- func (cache *FileSystemCache) RemoveMetadataCache(path string)
- func (cache *FileSystemCache) RemoveNegativeEntryCache(path string)
- func (cache *FileSystemCache) RemoveParentDirCache(path string)
- func (cache *FileSystemCache) RemoveUserGroupsCache(user string)
- func (cache *FileSystemCache) RemoveUsersCache()
- type FileSystemCachePropagation
- func (propagation *FileSystemCachePropagation) Propagate(path string, eventType FilesystemCacheEventType)
- func (propagation *FileSystemCachePropagation) PropagateDirCreate(path string)
- func (propagation *FileSystemCachePropagation) PropagateDirExtract(path string)
- func (propagation *FileSystemCachePropagation) PropagateDirRemove(path string)
- func (propagation *FileSystemCachePropagation) PropagateFileCreate(path string)
- func (propagation *FileSystemCachePropagation) PropagateFileRemove(path string)
- func (propagation *FileSystemCachePropagation) PropagateFileUpdate(path string)
- func (propagation *FileSystemCachePropagation) Release()
- type FileSystemConfig
- type FileTransferResult
- type FilesystemCacheEventHandler
- type FilesystemCacheEventHandlerMap
- func (handlerMap *FilesystemCacheEventHandlerMap) AddEventHandler(handler FilesystemCacheEventHandler) string
- func (handlerMap *FilesystemCacheEventHandlerMap) GetEventHandler(handlerID string) FilesystemCacheEventHandler
- func (handlerMap *FilesystemCacheEventHandlerMap) GetEventHandlerIDs() []string
- func (handlerMap *FilesystemCacheEventHandlerMap) GetEventHandlers() []FilesystemCacheEventHandler
- func (handlerMap *FilesystemCacheEventHandlerMap) Release()
- func (handlerMap *FilesystemCacheEventHandlerMap) RemoveEventHandler(handlerID string)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendDirCreateEvent(path string)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendDirExtractEvent(path string)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendDirRemoveEvent(path string)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendEvent(path string, eventType FilesystemCacheEventType)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendFileCreateEvent(path string)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendFileRemoveEvent(path string)
- func (handlerMap *FilesystemCacheEventHandlerMap) SendFileUpdateEvent(path string)
- type FilesystemCacheEventType
- type IRODSTicketRestrictions
- type MetadataCacheTimeoutSetting
Constants ¶
const ( // FileSystemConnectionCreationTimeoutDefault is a default timeout value of connection error FileSystemConnectionCreationTimeoutDefault = 1 * time.Minute // FileSystemConnectionLifespanDefault is a default lifespan of a connection FileSystemConnectionLifespanDefault = 1 * time.Hour // FileSystemTimeoutDefault is a default value of timeout FileSystemTimeoutDefault = 5 * time.Minute // FileSystemTCPBufferSizeDefault is a default value of tcp buffer size FileSystemTCPBufferSizeDefault = 4 * 1024 * 1024 // FileSystemMetadataConnectionInitNumberDefault is a default value of connection init number FileSystemMetadataConnectionInitNumberDefault = 1 // FileSystemMetadataConnectionMaxNumberDefault is a default number of connection max value FileSystemMetadataConnectionMaxNumberDefault = 2 // FileSystemMetadataConnectionMaxIdleNumberDefault is a default number of max idle connections FileSystemMetadataConnectionMaxIdleNumberDefault = 2 // FileSystemIOConnectionInitNumberDefault is a default value of connection init number FileSystemIOConnectionInitNumberDefault = 0 // FileSystemIOConnectionMaxNumberDefault is a default number of connection max value FileSystemIOConnectionMaxNumberDefault = 10 // FileSystemIOConnectionMaxIdleNumberDefault is a default number of max idle connections FileSystemIOConnectionMaxIdleNumberDefault = 4 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CacheConfig ¶ added in v0.15.0
type CacheConfig struct { Timeout types.Duration `yaml:"timeout,omitempty" json:"timeout,omitempty"` // cache timeout CleanupTime types.Duration `yaml:"cleanup_time,omitempty" json:"cleanup_time,omitempty"` // cache cleanup time MetadataTimeoutSettings []MetadataCacheTimeoutSetting `yaml:"metadata_timeout_settings,omitempty" json:"metadata_timeout_settings,omitempty"` // determine if we will invalidate parent dir's entry cache // at subdir/file creation/deletion // turn to false to allow short cache inconsistency InvalidateParentEntryCacheImmediately bool `yaml:"invalidate_parent_entry_cache_immediately,omitempty" json:"invalidate_parent_entry_cache_immediately,omitempty"` // for mysql iCAT backend, this should be true. // for postgresql iCAT backend, this can be false. StartNewTransaction bool `yaml:"start_new_transaction,omitempty" json:"start_new_transaction,omitempty"` }
CacheConfig defines cache config
func NewDefaultCacheConfig ¶ added in v0.15.0
func NewDefaultCacheConfig() CacheConfig
NewDefaultCacheConfig creates a new default CacheConfig
type ConnectionConfig ¶ added in v0.15.0
type ConnectionConfig struct { CreationTimeout types.Duration `yaml:"creation_timeout,omitempty" json:"creation_timeout,omitempty"` // timeout for creating a new connection InitNumber int `yaml:"init_number,omitempty" json:"init_number,omitempty"` // number of connections created when init MaxNumber int `yaml:"max_number,omitempty" json:"max_number,omitempty"` // max number of connections MaxIdleNumber int `yaml:"max_idle_number,omitempty" json:"max_idle_number,omitempty"` // max number of idle connections Lifespan types.Duration `yaml:"lifespan,omitempty" json:"lifespan,omitempty"` // connection's lifespan (max time to be reused) OperationTimeout types.Duration `yaml:"operation_timeout,omitempty" json:"operation_timeout,omitempty"` // timeout for iRODS operations IdleTimeout types.Duration `yaml:"idle_timeout,omitempty" json:"idle_timeout,omitempty"` // time out for being idle, after this point the connection will be disposed TCPBufferSize int `yaml:"tcp_buffer_size,omitempty" json:"tcp_buffer_size,omitempty"` // buffer size }
ConnectionConfig is a struct that stores configuration for connections
func NewDefaultIOConnectionConfig ¶ added in v0.15.0
func NewDefaultIOConnectionConfig() ConnectionConfig
NewDefaultIOConnectionConfig creates a default ConnectionConfig for IO
func NewDefaultMetadataConnectionConfig ¶ added in v0.15.0
func NewDefaultMetadataConnectionConfig() ConnectionConfig
NewDefaultMetadataConnectionConfig creates a default ConnectionConfig for metadata
type Entry ¶ added in v0.5.2
type Entry struct { ID int64 Type EntryType Name string Path string Owner string Size int64 DataType string CreateTime time.Time ModifyTime time.Time CheckSumAlgorithm types.ChecksumAlgorithm CheckSum []byte }
Entry is a struct for filesystem entry
type FileHandle ¶
type FileHandle struct {
// contains filtered or unexported fields
}
FileHandle is a handle for a file opened
func (*FileHandle) GetEntry ¶ added in v0.7.5
func (handle *FileHandle) GetEntry() *Entry
GetEntry returns Entry info
func (*FileHandle) GetID ¶ added in v0.7.5
func (handle *FileHandle) GetID() string
GetID returns ID
func (*FileHandle) GetIRODSFileHandle ¶ added in v0.7.5
func (handle *FileHandle) GetIRODSFileHandle() *types.IRODSFileHandle
GetIRODSFileHandle returns iRODS File Handle
func (*FileHandle) GetOffset ¶
func (handle *FileHandle) GetOffset() int64
GetOffset returns current offset
func (*FileHandle) GetOpenMode ¶ added in v0.7.5
func (handle *FileHandle) GetOpenMode() types.FileOpenMode
GetOpenMode returns file open mode
func (*FileHandle) IsReadMode ¶
func (handle *FileHandle) IsReadMode() bool
IsReadMode returns true if file is opened with read mode
func (*FileHandle) IsReadOnlyMode ¶ added in v0.7.6
func (handle *FileHandle) IsReadOnlyMode() bool
IsReadOnlyMode returns true if file is opened with read only mode
func (*FileHandle) IsWriteMode ¶
func (handle *FileHandle) IsWriteMode() bool
IsWriteMode returns true if file is opened with write mode
func (*FileHandle) IsWriteOnlyMode ¶ added in v0.7.6
func (handle *FileHandle) IsWriteOnlyMode() bool
IsWriteOnlyMode returns true if file is opened with write only mode
func (*FileHandle) LockDataObject ¶ added in v0.12.8
func (handle *FileHandle) LockDataObject(wait bool) error
LockDataObject locks data object with write lock (exclusive)
func (*FileHandle) RLockDataObject ¶ added in v0.12.8
func (handle *FileHandle) RLockDataObject(wait bool) error
RLockDataObject locks data object with read lock
func (*FileHandle) Read ¶
func (handle *FileHandle) Read(buffer []byte) (int, error)
Read reads the file, implements io.Reader.Read
func (*FileHandle) ReadAt ¶ added in v0.5.5
func (handle *FileHandle) ReadAt(buffer []byte, offset int64) (int, error)
ReadAt reads data from given offset
func (*FileHandle) Seek ¶
func (handle *FileHandle) Seek(offset int64, whence int) (int64, error)
Seek moves file pointer
func (*FileHandle) ToString ¶
func (handle *FileHandle) ToString() string
ToString stringifies the object
func (*FileHandle) Truncate ¶ added in v0.7.0
func (handle *FileHandle) Truncate(size int64) error
Truncate truncates the file
func (*FileHandle) Unlock ¶ added in v0.7.5
func (handle *FileHandle) Unlock()
Unlock unlocks the handle
func (*FileHandle) UnlockDataObject ¶ added in v0.12.8
func (handle *FileHandle) UnlockDataObject() error
UnlockDataObject unlocks data object
type FileHandleMap ¶ added in v0.7.5
type FileHandleMap struct {
// contains filtered or unexported fields
}
FileHandleMap manages File Handles opened
func NewFileHandleMap ¶ added in v0.7.5
func NewFileHandleMap() *FileHandleMap
NewFileHandleMap creates a new FileHandleMap
func (*FileHandleMap) Add ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) Add(handle *FileHandle)
Add registers a file handle
func (*FileHandleMap) AddCloseEventHandler ¶ added in v0.9.3
func (fileHandleMap *FileHandleMap) AddCloseEventHandler(path string, handler FileHandleMapEventHandler) string
AddCloseEventHandler registers an event handler for file close
func (*FileHandleMap) Clear ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) Clear()
Clear clears all file handles registered
func (*FileHandleMap) Get ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) Get(id string) *FileHandle
Get returns a file handle registered using ID
func (*FileHandleMap) List ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) List() []*FileHandle
List lists all file handles registered
func (*FileHandleMap) ListByPath ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) ListByPath(path string) []*FileHandle
ListByPath returns file handles registered using path
func (*FileHandleMap) ListPathsInDir ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) ListPathsInDir(parentPath string) []string
ListPathsInDir returns paths of file handles under given parent path
func (*FileHandleMap) Pop ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) Pop(id string) *FileHandle
Pop pops a file handle registered using ID and returns the handle
func (*FileHandleMap) PopAll ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) PopAll() []*FileHandle
PopAll pops all file handles registered (clear) and returns
func (*FileHandleMap) PopByPath ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) PopByPath(path string) []*FileHandle
PopByPath pops file handles registered using path and returns the handles
func (*FileHandleMap) Remove ¶ added in v0.7.5
func (fileHandleMap *FileHandleMap) Remove(id string)
Remove deletes a file handle registered using ID
func (*FileHandleMap) RemoveCloseEventHandler ¶ added in v0.9.3
func (fileHandleMap *FileHandleMap) RemoveCloseEventHandler(handlerID string)
RemoveCloseEventHandler deregisters an event handler for file close
type FileHandleMapEventHandler ¶ added in v0.9.3
FileHandleMapEventHandler is a event handler for FileHandleMap
type FileHandleMapEventHandlerWrap ¶ added in v0.9.3
type FileHandleMapEventHandlerWrap struct {
// contains filtered or unexported fields
}
FileHandleMapEventHandlerWrap is wrapper event handler
type FileLock ¶ added in v0.7.0
type FileLock struct {
// contains filtered or unexported fields
}
FileLock is a lock for a file
type FileLocks ¶ added in v0.7.0
type FileLocks struct {
// contains filtered or unexported fields
}
FileLocks manages file locks
func NewFileLocks ¶ added in v0.7.0
func NewFileLocks() *FileLocks
NewFileLocks creates a new FileLocks
func (*FileLocks) LockFilesForPrefix ¶ added in v0.7.0
LockFilesForPrefix locks all files starting with the given prefix, does not create a new lock, but increases reference
func (*FileLocks) UnlockFiles ¶ added in v0.7.0
UnlockFiles unlocks multiple files
type FileSystem ¶
type FileSystem struct {
// contains filtered or unexported fields
}
FileSystem provides a file-system like interface
func NewFileSystem ¶
func NewFileSystem(account *types.IRODSAccount, config *FileSystemConfig) (*FileSystem, error)
NewFileSystem creates a new FileSystem
func NewFileSystemWithDefault ¶
func NewFileSystemWithDefault(account *types.IRODSAccount, applicationName string) (*FileSystem, error)
NewFileSystemWithDefault creates a new FileSystem with default configurations
func (*FileSystem) AddCacheEventHandler ¶ added in v0.10.6
func (fs *FileSystem) AddCacheEventHandler(handler FilesystemCacheEventHandler) string
AddCacheEventHandler adds cache event handler
func (*FileSystem) AddMetadata ¶ added in v0.4.0
func (fs *FileSystem) AddMetadata(irodsPath string, attName string, attValue string, attUnits string) error
AddMetadata adds a metadata for the path
func (*FileSystem) AddResourceMetadata ¶ added in v0.14.4
func (fs *FileSystem) AddResourceMetadata(resource string, attName, attValue, attUnits string) error
AddResourceMetadata adds a resource metadata
func (*FileSystem) AddTicketAllowedGroup ¶ added in v0.12.0
func (fs *FileSystem) AddTicketAllowedGroup(ticketName string, groupName string) error
AddTicketAllowedGroup adds a group to the allowed group names list of the given ticket
func (*FileSystem) AddTicketAllowedHost ¶ added in v0.12.0
func (fs *FileSystem) AddTicketAllowedHost(ticketName string, host string) error
AddTicketAllowedHost adds a host to the allowed hosts list of the given ticket
func (*FileSystem) AddTicketAllowedUser ¶ added in v0.12.0
func (fs *FileSystem) AddTicketAllowedUser(ticketName string, userName string) error
AddTicketAllowedUser adds a user to the allowed user names list of the given ticket
func (*FileSystem) AddUserMetadata ¶ added in v0.4.5
func (fs *FileSystem) AddUserMetadata(user string, attName, attValue, attUnits string) error
AddUserMetadata adds a user metadata
func (*FileSystem) ClearCache ¶
func (fs *FileSystem) ClearCache()
ClearCache clears all file system caches
func (*FileSystem) ClearTicketExpirationTime ¶ added in v0.12.0
func (fs *FileSystem) ClearTicketExpirationTime(ticketName string) error
ClearTicketExpirationTime clears the expiration time of the given ticket
func (*FileSystem) ClearTicketUseLimit ¶ added in v0.12.0
func (fs *FileSystem) ClearTicketUseLimit(ticketName string) error
ClearTicketUseLimit clears the use limit of the given ticket
func (*FileSystem) ClearTicketWriteByteLimit ¶ added in v0.12.0
func (fs *FileSystem) ClearTicketWriteByteLimit(ticketName string) error
ClearTicketWriteByteLimit clears the write byte limit of the given ticket
func (*FileSystem) ClearTicketWriteFileLimit ¶ added in v0.12.0
func (fs *FileSystem) ClearTicketWriteFileLimit(ticketName string) error
ClearTicketWriteFileLimit clears the write file limit of the given ticket
func (*FileSystem) ConnectionTotal ¶ added in v0.9.7
func (fs *FileSystem) ConnectionTotal() int
ConnectionTotal counts current established connections
func (*FileSystem) CopyFile ¶
func (fs *FileSystem) CopyFile(srcPath string, destPath string, force bool) error
CopyFile copies a file
func (*FileSystem) CopyFileToFile ¶
func (fs *FileSystem) CopyFileToFile(srcPath string, destPath string, force bool) error
CopyFileToFile copies a file
func (*FileSystem) CreateFile ¶
func (fs *FileSystem) CreateFile(path string, resource string, mode string) (*FileHandle, error)
CreateFile opens a new file for write
func (*FileSystem) CreateTicket ¶ added in v0.12.0
func (fs *FileSystem) CreateTicket(ticketName string, ticketType types.TicketType, path string) error
CreateTicket creates a new ticket
func (*FileSystem) DeleteMetadata ¶ added in v0.4.0
func (fs *FileSystem) DeleteMetadata(irodsPath string, avuid int64) error
DeleteMetadata deletes a metadata for the path
func (*FileSystem) DeleteMetadataByName ¶ added in v0.14.4
func (fs *FileSystem) DeleteMetadataByName(irodsPath string, attName string) error
DeleteMetadataByName deletes a metadata for the path by name
func (*FileSystem) DeleteResourceMetadata ¶ added in v0.14.4
func (fs *FileSystem) DeleteResourceMetadata(resource string, avuid int64) error
DeleteResourceMetadata deletes a resource metadata
func (*FileSystem) DeleteResourceMetadataByName ¶ added in v0.14.4
func (fs *FileSystem) DeleteResourceMetadataByName(resource string, attName string) error
DeleteResourceMetadataByName deletes a resource metadata by name
func (*FileSystem) DeleteTicket ¶ added in v0.12.0
func (fs *FileSystem) DeleteTicket(ticketName string) error
DeleteTicket deletes the given ticket
func (*FileSystem) DeleteUserMetadata ¶ added in v0.4.5
func (fs *FileSystem) DeleteUserMetadata(user string, avuid int64) error
DeleteUserMetadata deletes a user metadata
func (*FileSystem) DeleteUserMetadataByName ¶ added in v0.14.4
func (fs *FileSystem) DeleteUserMetadataByName(user string, attName string) error
DeleteUserMetadataByName deletes a user metadata by name
func (*FileSystem) DownloadFile ¶
func (fs *FileSystem) DownloadFile(irodsPath string, resource string, localPath string, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
DownloadFile downloads a file to local
func (*FileSystem) DownloadFileParallel ¶ added in v0.5.2
func (fs *FileSystem) DownloadFileParallel(irodsPath string, resource string, localPath string, taskNum int, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
DownloadFileParallel downloads a file to local in parallel
func (*FileSystem) DownloadFileParallelResumable ¶ added in v0.12.20
func (fs *FileSystem) DownloadFileParallelResumable(irodsPath string, resource string, localPath string, taskNum int, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
DownloadFileParallelResumable downloads a file to local in parallel with support of transfer resume
func (*FileSystem) DownloadFileRedirectToResource ¶ added in v0.14.0
func (fs *FileSystem) DownloadFileRedirectToResource(irodsPath string, resource string, localPath string, taskNum int, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
DownloadFileRedirectToResource downloads a file from resource to local in parallel
func (*FileSystem) DownloadFileResumable ¶ added in v0.12.20
func (fs *FileSystem) DownloadFileResumable(irodsPath string, resource string, localPath string, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
DownloadFileResumable downloads a file to local with support of transfer resume
func (*FileSystem) DownloadFileToBuffer ¶ added in v0.12.8
func (fs *FileSystem) DownloadFileToBuffer(irodsPath string, resource string, buffer *bytes.Buffer, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
DownloadFileToBuffer downloads a file to buffer
func (*FileSystem) Exists ¶
func (fs *FileSystem) Exists(path string) bool
Exists checks file/directory existence
func (*FileSystem) ExistsDir ¶
func (fs *FileSystem) ExistsDir(path string) bool
ExistsDir checks directory existence
func (*FileSystem) ExistsFile ¶
func (fs *FileSystem) ExistsFile(path string) bool
ExistsFile checks file existence
func (*FileSystem) ExtractStructFile ¶ added in v0.9.4
func (fs *FileSystem) ExtractStructFile(path string, targetCollection string, resource string, dataType types.DataType, force bool, bulkReg bool) error
ExtractStructFile extracts a struct file
func (*FileSystem) GetDirACLInheritance ¶ added in v0.14.6
func (fs *FileSystem) GetDirACLInheritance(path string) (*types.IRODSAccessInheritance, error)
GetDirACLInheritance returns ACL inheritance of a directory
func (*FileSystem) GetID ¶ added in v0.9.0
func (fs *FileSystem) GetID() string
GetID returns file system instance ID
func (*FileSystem) GetIOConnection ¶ added in v0.11.0
func (fs *FileSystem) GetIOConnection() (*connection.IRODSConnection, error)
GetIOConnection returns irods connection for IO
func (*FileSystem) GetMetadataConnection ¶ added in v0.11.0
func (fs *FileSystem) GetMetadataConnection() (*connection.IRODSConnection, error)
GetMetadataConnection returns irods connection for metadata operations
func (*FileSystem) GetMetrics ¶ added in v0.9.7
func (fs *FileSystem) GetMetrics() *metrics.IRODSMetrics
GetMetrics returns metrics
func (*FileSystem) GetServerVersion ¶ added in v0.10.9
func (fs *FileSystem) GetServerVersion() (*types.IRODSVersion, error)
GetServerVersion returns server version info
func (*FileSystem) GetTicket ¶ added in v0.12.1
func (fs *FileSystem) GetTicket(ticketName string) (*types.IRODSTicket, error)
GetTicket gets ticket information
func (*FileSystem) GetTicketForAnonymousAccess ¶ added in v0.7.0
func (fs *FileSystem) GetTicketForAnonymousAccess(ticketName string) (*types.IRODSTicketForAnonymousAccess, error)
GetTicketForAnonymousAccess gets ticket information for anonymous access
func (*FileSystem) GetTicketRestrictions ¶ added in v0.12.0
func (fs *FileSystem) GetTicketRestrictions(ticketID int64) (*IRODSTicketRestrictions, error)
GetTicketRestrictions gets all restriction info. for the given ticket
func (*FileSystem) List ¶
func (fs *FileSystem) List(path string) ([]*Entry, error)
List lists all file system entries under the given path
func (*FileSystem) ListACLs ¶ added in v0.3.0
func (fs *FileSystem) ListACLs(path string) ([]*types.IRODSAccess, error)
ListACLs returns ACLs
func (*FileSystem) ListACLsForEntries ¶ added in v0.9.4
func (fs *FileSystem) ListACLsForEntries(path string) ([]*types.IRODSAccess, error)
ListACLsForEntries returns ACLs for entries in a collection
func (*FileSystem) ListACLsWithGroupUsers ¶ added in v0.3.0
func (fs *FileSystem) ListACLsWithGroupUsers(path string) ([]*types.IRODSAccess, error)
ListACLsWithGroupUsers returns ACLs
func (*FileSystem) ListAllProcesses ¶ added in v0.9.7
func (fs *FileSystem) ListAllProcesses() ([]*types.IRODSProcess, error)
ListAllProcesses lists all processes
func (*FileSystem) ListDirACLs ¶ added in v0.3.0
func (fs *FileSystem) ListDirACLs(path string) ([]*types.IRODSAccess, error)
ListDirACLs returns ACLs of a directory
func (*FileSystem) ListDirACLsWithGroupUsers ¶ added in v0.3.0
func (fs *FileSystem) ListDirACLsWithGroupUsers(path string) ([]*types.IRODSAccess, error)
ListDirACLsWithGroupUsers returns ACLs of a directory CAUTION: this can fail if a group contains a lot of users
func (*FileSystem) ListFileACLs ¶ added in v0.3.0
func (fs *FileSystem) ListFileACLs(path string) ([]*types.IRODSAccess, error)
ListFileACLs returns ACLs of a file
func (*FileSystem) ListFileACLsWithGroupUsers ¶ added in v0.3.0
func (fs *FileSystem) ListFileACLsWithGroupUsers(path string) ([]*types.IRODSAccess, error)
ListFileACLsWithGroupUsers returns ACLs of a file
func (*FileSystem) ListGroupUsers ¶ added in v0.3.0
func (fs *FileSystem) ListGroupUsers(group string) ([]*types.IRODSUser, error)
ListGroupUsers lists all users in a group
func (*FileSystem) ListGroups ¶ added in v0.4.5
func (fs *FileSystem) ListGroups() ([]*types.IRODSUser, error)
ListGroups lists all groups
func (*FileSystem) ListMetadata ¶ added in v0.4.0
func (fs *FileSystem) ListMetadata(path string) ([]*types.IRODSMeta, error)
ListMetadata lists metadata for the given path
func (*FileSystem) ListProcesses ¶ added in v0.9.7
func (fs *FileSystem) ListProcesses(address string, zone string) ([]*types.IRODSProcess, error)
ListProcesses lists all processes
func (*FileSystem) ListResourceMetadata ¶ added in v0.14.4
func (fs *FileSystem) ListResourceMetadata(resource string) ([]*types.IRODSMeta, error)
ListResourceMetadata lists all resource metadata
func (*FileSystem) ListTicketHostRestrictions ¶ added in v0.12.0
func (fs *FileSystem) ListTicketHostRestrictions(ticketID int64) ([]string, error)
ListTicketHostRestrictions lists all host restrictions for the given ticket
func (*FileSystem) ListTicketUserGroupRestrictions ¶ added in v0.12.0
func (fs *FileSystem) ListTicketUserGroupRestrictions(ticketID int64) ([]string, error)
ListTicketUserGroupRestrictions lists all group name restrictions for the given ticket
func (*FileSystem) ListTicketUserNameRestrictions ¶ added in v0.12.0
func (fs *FileSystem) ListTicketUserNameRestrictions(ticketID int64) ([]string, error)
ListTicketUserNameRestrictions lists all user name restrictions for the given ticket
func (*FileSystem) ListTickets ¶ added in v0.12.0
func (fs *FileSystem) ListTickets() ([]*types.IRODSTicket, error)
ListTickets lists all available ticket information
func (*FileSystem) ListTicketsBasic ¶ added in v0.12.0
func (fs *FileSystem) ListTicketsBasic() ([]*types.IRODSTicket, error)
ListTicketsBasic lists all available basic ticket information
func (*FileSystem) ListUserGroups ¶ added in v0.5.9
func (fs *FileSystem) ListUserGroups(user string) ([]*types.IRODSUser, error)
ListUserGroups lists all groups that a user belongs to
func (*FileSystem) ListUserMetadata ¶ added in v0.4.5
func (fs *FileSystem) ListUserMetadata(user string) ([]*types.IRODSMeta, error)
ListUserMetadata lists all user metadata
func (*FileSystem) ListUsers ¶ added in v0.4.5
func (fs *FileSystem) ListUsers() ([]*types.IRODSUser, error)
ListUsers lists all users
func (*FileSystem) MakeDir ¶
func (fs *FileSystem) MakeDir(path string, recurse bool) error
MakeDir creates a directory
func (*FileSystem) ModifyTicketExpirationTime ¶ added in v0.12.0
func (fs *FileSystem) ModifyTicketExpirationTime(ticketName string, expirationTime time.Time) error
ModifyTicketExpirationTime modifies the expiration time of the given ticket
func (*FileSystem) ModifyTicketUseLimit ¶ added in v0.12.0
func (fs *FileSystem) ModifyTicketUseLimit(ticketName string, uses int64) error
ModifyTicketUseLimit modifies the use limit of the given ticket
func (*FileSystem) ModifyTicketWriteByteLimit ¶ added in v0.12.0
func (fs *FileSystem) ModifyTicketWriteByteLimit(ticketName string, bytes int64) error
ModifyTicketWriteByteLimit modifies the write byte limit of the given ticket
func (*FileSystem) ModifyTicketWriteFileLimit ¶ added in v0.12.0
func (fs *FileSystem) ModifyTicketWriteFileLimit(ticketName string, count int64) error
ModifyTicketWriteFileLimit modifies the write file limit of the given ticket
func (*FileSystem) OpenFile ¶
func (fs *FileSystem) OpenFile(path string, resource string, mode string) (*FileHandle, error)
OpenFile opens an existing file for read/write
func (*FileSystem) RemoveCacheEventHandler ¶ added in v0.10.6
func (fs *FileSystem) RemoveCacheEventHandler(handlerID string)
RemoveCacheEventHandler removes cache event handler
func (*FileSystem) RemoveDir ¶
func (fs *FileSystem) RemoveDir(path string, recurse bool, force bool) error
RemoveDir deletes a directory
func (*FileSystem) RemoveFile ¶
func (fs *FileSystem) RemoveFile(path string, force bool) error
RemoveFile deletes a file
func (*FileSystem) RemoveTicketAllowedGroup ¶ added in v0.12.0
func (fs *FileSystem) RemoveTicketAllowedGroup(ticketName string, groupName string) error
RemoveTicketAllowedGroup removes the group from the allowed group names list of the given ticket
func (*FileSystem) RemoveTicketAllowedHost ¶ added in v0.12.0
func (fs *FileSystem) RemoveTicketAllowedHost(ticketName string, host string) error
RemoveTicketAllowedHost removes the host from the allowed hosts list of the given ticket
func (*FileSystem) RemoveTicketAllowedUser ¶ added in v0.12.0
func (fs *FileSystem) RemoveTicketAllowedUser(ticketName string, userName string) error
RemoveTicketAllowedUser removes the user from the allowed user names list of the given ticket
func (*FileSystem) RenameDir ¶
func (fs *FileSystem) RenameDir(srcPath string, destPath string) error
RenameDir renames a dir
func (*FileSystem) RenameDirToDir ¶
func (fs *FileSystem) RenameDirToDir(srcPath string, destPath string) error
RenameDirToDir renames a dir
func (*FileSystem) RenameFile ¶
func (fs *FileSystem) RenameFile(srcPath string, destPath string) error
RenameFile renames a file
func (*FileSystem) RenameFileToFile ¶
func (fs *FileSystem) RenameFileToFile(srcPath string, destPath string) error
RenameFileToFile renames a file
func (*FileSystem) ReplicateFile ¶
func (fs *FileSystem) ReplicateFile(path string, resource string, update bool) error
ReplicateFile replicates a file
func (*FileSystem) ReturnIOConnection ¶ added in v0.11.0
func (fs *FileSystem) ReturnIOConnection(conn *connection.IRODSConnection) error
ReturnIOConnection returns irods connection for IO back to session
func (*FileSystem) ReturnMetadataConnection ¶ added in v0.11.0
func (fs *FileSystem) ReturnMetadataConnection(conn *connection.IRODSConnection) error
ReturnMetadataConnection returns irods connection for metadata operations back to session
func (*FileSystem) SearchByMeta ¶ added in v0.4.3
func (fs *FileSystem) SearchByMeta(metaname string, metavalue string) ([]*Entry, error)
SearchByMeta searches all file system entries with given metadata
func (*FileSystem) Stat ¶
func (fs *FileSystem) Stat(p string) (*Entry, error)
Stat returns file status
func (*FileSystem) StatDir ¶
func (fs *FileSystem) StatDir(path string) (*Entry, error)
StatDir returns status of a directory
func (*FileSystem) StatFile ¶
func (fs *FileSystem) StatFile(path string) (*Entry, error)
StatFile returns status of a file
func (*FileSystem) SupportParallelUpload ¶ added in v0.10.9
func (fs *FileSystem) SupportParallelUpload() bool
SupportParallelUpload returns if the server supports parallel upload
func (*FileSystem) Touch ¶ added in v0.15.0
func (fs *FileSystem) Touch(irodsPath string, resource string, noCreate bool) error
Touch creates an empty file or update timestamp
func (*FileSystem) TruncateFile ¶
func (fs *FileSystem) TruncateFile(path string, size int64) error
TruncateFile truncates a file
func (*FileSystem) UploadFile ¶
func (fs *FileSystem) UploadFile(localPath string, irodsPath string, resource string, replicate bool, checksum bool, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
UploadFile uploads a local file to irods
func (*FileSystem) UploadFileFromBuffer ¶ added in v0.12.8
func (fs *FileSystem) UploadFileFromBuffer(buffer *bytes.Buffer, irodsPath string, resource string, replicate bool, checksum bool, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
UploadFileFromBuffer uploads buffer data to irods
func (*FileSystem) UploadFileParallel ¶ added in v0.5.2
func (fs *FileSystem) UploadFileParallel(localPath string, irodsPath string, resource string, taskNum int, replicate bool, checksum bool, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
UploadFileParallel uploads a local file to irods in parallel
func (*FileSystem) UploadFileParallelRedirectToResource ¶ added in v0.14.0
func (fs *FileSystem) UploadFileParallelRedirectToResource(localPath string, irodsPath string, resource string, taskNum int, replicate bool, checksum bool, verifyChecksum bool, callback common.TrackerCallBack) (*FileTransferResult, error)
UploadFileParallelRedirectToResource uploads a file from local to resource server in parallel
type FileSystemCache ¶
type FileSystemCache struct {
// contains filtered or unexported fields
}
FileSystemCache manages filesystem caches
func NewFileSystemCache ¶
func NewFileSystemCache(config *CacheConfig) *FileSystemCache
NewFileSystemCache creates a new FileSystemCache
func (*FileSystemCache) AddACLsCache ¶ added in v0.9.4
func (cache *FileSystemCache) AddACLsCache(path string, accesses []*types.IRODSAccess)
AddACLsCache adds a ACLs cache
func (*FileSystemCache) AddACLsCacheMulti ¶ added in v0.9.4
func (cache *FileSystemCache) AddACLsCacheMulti(accesses []*types.IRODSAccess)
AddACLsCacheMulti adds multiple ACLs caches
func (*FileSystemCache) AddDirCache ¶
func (cache *FileSystemCache) AddDirCache(path string, entries []string)
AddDirCache adds a dir cache
func (*FileSystemCache) AddEntryCache ¶
func (cache *FileSystemCache) AddEntryCache(entry *Entry)
AddEntryCache adds an entry cache
func (*FileSystemCache) AddGroupUsersCache ¶ added in v0.3.0
func (cache *FileSystemCache) AddGroupUsersCache(group string, users []*types.IRODSUser)
AddGroupUsersCache adds a group user (users in a group) cache
func (*FileSystemCache) AddGroupsCache ¶ added in v0.4.5
func (cache *FileSystemCache) AddGroupsCache(groups []*types.IRODSUser)
AddGroupsCache adds a groups cache (cache of a list of all groups)
func (*FileSystemCache) AddMetadataCache ¶ added in v0.4.0
func (cache *FileSystemCache) AddMetadataCache(path string, metas []*types.IRODSMeta)
AddMetadataCache adds a metadata cache
func (*FileSystemCache) AddNegativeEntryCache ¶ added in v0.7.0
func (cache *FileSystemCache) AddNegativeEntryCache(path string)
AddNegativeEntryCache adds a negative entry cache
func (*FileSystemCache) AddUserGroupsCache ¶ added in v0.5.9
func (cache *FileSystemCache) AddUserGroupsCache(user string, groups []*types.IRODSUser)
AddUserGroupsCache adds a user's groups (groups that a user belongs to) cache
func (*FileSystemCache) AddUsersCache ¶ added in v0.4.5
func (cache *FileSystemCache) AddUsersCache(users []*types.IRODSUser)
AddUsersCache adds a users cache (cache of a list of all users)
func (*FileSystemCache) ClearACLsCache ¶ added in v0.9.4
func (cache *FileSystemCache) ClearACLsCache()
ClearACLsCache clears all ACLs caches
func (*FileSystemCache) ClearDirCache ¶
func (cache *FileSystemCache) ClearDirCache()
ClearDirCache clears all dir caches
func (*FileSystemCache) ClearEntryCache ¶
func (cache *FileSystemCache) ClearEntryCache()
ClearEntryCache clears all entry caches
func (*FileSystemCache) ClearMetadataCache ¶ added in v0.4.0
func (cache *FileSystemCache) ClearMetadataCache()
ClearMetadataCache clears all metadata caches
func (*FileSystemCache) ClearNegativeEntryCache ¶ added in v0.7.0
func (cache *FileSystemCache) ClearNegativeEntryCache()
ClearNegativeEntryCache clears all negative entry caches
func (*FileSystemCache) GetACLsCache ¶ added in v0.9.4
func (cache *FileSystemCache) GetACLsCache(path string) []*types.IRODSAccess
GetACLsCache retrives a ACLs cache
func (*FileSystemCache) GetDirCache ¶
func (cache *FileSystemCache) GetDirCache(path string) []string
GetDirCache retrives a dir cache
func (*FileSystemCache) GetEntryCache ¶
func (cache *FileSystemCache) GetEntryCache(path string) *Entry
GetEntryCache retrieves an entry cache
func (*FileSystemCache) GetGroupUsersCache ¶ added in v0.3.0
func (cache *FileSystemCache) GetGroupUsersCache(group string) []*types.IRODSUser
GetGroupUsersCache retrives a group user (users in a group) cache
func (*FileSystemCache) GetGroupsCache ¶ added in v0.4.5
func (cache *FileSystemCache) GetGroupsCache() []*types.IRODSUser
GetGroupsCache retrives a groups cache (cache of a list of all groups)
func (*FileSystemCache) GetMetadataCache ¶ added in v0.4.0
func (cache *FileSystemCache) GetMetadataCache(path string) []*types.IRODSMeta
GetMetadataCache retrieves a metadata cache
func (*FileSystemCache) GetUserGroupsCache ¶ added in v0.5.9
func (cache *FileSystemCache) GetUserGroupsCache(user string) []*types.IRODSUser
GetUserGroupsCache retrives a user's groups (groups that a user belongs to) cache
func (*FileSystemCache) GetUsersCache ¶ added in v0.4.5
func (cache *FileSystemCache) GetUsersCache() []*types.IRODSUser
GetUsersCache retrives a users cache (cache of a list of all users)
func (*FileSystemCache) HasNegativeEntryCache ¶ added in v0.7.0
func (cache *FileSystemCache) HasNegativeEntryCache(path string) bool
HasNegativeEntryCache checks the existence of a negative entry cache
func (*FileSystemCache) RemoveACLsCache ¶ added in v0.9.4
func (cache *FileSystemCache) RemoveACLsCache(path string)
RemoveACLsCache removes a ACLs cache
func (*FileSystemCache) RemoveAllNegativeEntryCacheForPath ¶ added in v0.7.0
func (cache *FileSystemCache) RemoveAllNegativeEntryCacheForPath(path string)
RemoveAllNegativeEntryCacheForPath removes all negative entry caches
func (*FileSystemCache) RemoveDirCache ¶
func (cache *FileSystemCache) RemoveDirCache(path string)
RemoveDirCache removes a dir cache
func (*FileSystemCache) RemoveEntryCache ¶
func (cache *FileSystemCache) RemoveEntryCache(path string)
RemoveEntryCache removes an entry cache
func (*FileSystemCache) RemoveGroupUsersCache ¶ added in v0.3.0
func (cache *FileSystemCache) RemoveGroupUsersCache(group string)
RemoveGroupUsersCache removes a group user (users in a group) cache
func (*FileSystemCache) RemoveGroupsCache ¶ added in v0.4.5
func (cache *FileSystemCache) RemoveGroupsCache()
RemoveGroupsCache removes a groups cache (cache of a list of all groups)
func (*FileSystemCache) RemoveMetadataCache ¶ added in v0.4.0
func (cache *FileSystemCache) RemoveMetadataCache(path string)
RemoveMetadataCache removes a metadata cache
func (*FileSystemCache) RemoveNegativeEntryCache ¶ added in v0.7.0
func (cache *FileSystemCache) RemoveNegativeEntryCache(path string)
RemoveNegativeEntryCache removes a negative entry cache
func (*FileSystemCache) RemoveParentDirCache ¶ added in v0.7.0
func (cache *FileSystemCache) RemoveParentDirCache(path string)
RemoveParentDirCache removes an entry cache for the parent path of the given path
func (*FileSystemCache) RemoveUserGroupsCache ¶ added in v0.5.9
func (cache *FileSystemCache) RemoveUserGroupsCache(user string)
RemoveUserGroupsCache removes a user's groups (groups that a user belongs to) cache
func (*FileSystemCache) RemoveUsersCache ¶ added in v0.4.5
func (cache *FileSystemCache) RemoveUsersCache()
RemoveUsersCache removes a users cache (cache of a list of all users)
type FileSystemCachePropagation ¶ added in v0.9.0
type FileSystemCachePropagation struct {
// contains filtered or unexported fields
}
FileSystemCachePropagation manages filesystem cache propagation
func NewFileSystemCachePropagation ¶ added in v0.9.0
func NewFileSystemCachePropagation(fs *FileSystem) *FileSystemCachePropagation
NewFileSystemCachePropagation creates a new FileSystemCachePropagation
func (*FileSystemCachePropagation) Propagate ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) Propagate(path string, eventType FilesystemCacheEventType)
Propagate propagates fs cache update event
func (*FileSystemCachePropagation) PropagateDirCreate ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) PropagateDirCreate(path string)
PropagateDirCreate propagates fs cache update event for dir create
func (*FileSystemCachePropagation) PropagateDirExtract ¶ added in v0.13.1
func (propagation *FileSystemCachePropagation) PropagateDirExtract(path string)
PropagateDirExtract propagates fs cache update event for dir extract
func (*FileSystemCachePropagation) PropagateDirRemove ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) PropagateDirRemove(path string)
PropagateDirRemove propagates fs cache update event for dir remove
func (*FileSystemCachePropagation) PropagateFileCreate ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) PropagateFileCreate(path string)
PropagateFileCreate propagates fs cache update event for file create
func (*FileSystemCachePropagation) PropagateFileRemove ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) PropagateFileRemove(path string)
PropagateFileRemove propagates fs cache update event for file remove
func (*FileSystemCachePropagation) PropagateFileUpdate ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) PropagateFileUpdate(path string)
PropagateFileUpdate propagates fs cache update event for file update
func (*FileSystemCachePropagation) Release ¶ added in v0.9.0
func (propagation *FileSystemCachePropagation) Release()
Release releases resources
type FileSystemConfig ¶
type FileSystemConfig struct { ApplicationName string `yaml:"application_name,omitempty" json:"application_name,omitempty"` MetadataConnection ConnectionConfig `yaml:"metadata_connection,omitempty" json:"metadata_connection,omitempty"` IOConnection ConnectionConfig `yaml:"io_connection,omitempty" json:"io_connection,omitempty"` Cache CacheConfig `yaml:"cache,omitempty" json:"cache,omitempty"` AddressResolver session.AddressResolver }
FileSystemConfig is a struct for file system configuration
func NewFileSystemConfig ¶
func NewFileSystemConfig(applicationName string) *FileSystemConfig
NewFileSystemConfig create a FileSystemConfig with a default settings
func (*FileSystemConfig) ToIOSessionConfig ¶ added in v0.15.0
func (config *FileSystemConfig) ToIOSessionConfig() *session.IRODSSessionConfig
ToIOSessionConfig creates a IRODSSessionConfig from FileSystemConfig
func (*FileSystemConfig) ToMetadataSessionConfig ¶ added in v0.15.0
func (config *FileSystemConfig) ToMetadataSessionConfig() *session.IRODSSessionConfig
ToMetadataSessionConfig creates a IRODSSessionConfig from FileSystemConfig
type FileTransferResult ¶ added in v0.14.12
type FileTransferResult struct { IRODSCheckSumAlgorithm types.ChecksumAlgorithm IRODSPath string IRODSCheckSum []byte IRODSSize int64 LocalCheckSumAlgorithm types.ChecksumAlgorithm LocalPath string LocalCheckSum []byte LocalSize int64 StartTime time.Time EndTime time.Time }
FileTransferResult a file transfer result
type FilesystemCacheEventHandler ¶ added in v0.10.6
type FilesystemCacheEventHandler func(path string, eventType FilesystemCacheEventType)
FilesystemCacheEventHandler is a cache event handler type
type FilesystemCacheEventHandlerMap ¶ added in v0.10.6
type FilesystemCacheEventHandlerMap struct {
// contains filtered or unexported fields
}
FilesystemCacheEventHandlerMap manages FilesystemCacheEventHandler
func NewFilesystemCacheEventHandlerMap ¶ added in v0.10.6
func NewFilesystemCacheEventHandlerMap() *FilesystemCacheEventHandlerMap
NewFilesystemCacheEventHandlerMap creates a new FilesystemCacheEventHandlerMap
func (*FilesystemCacheEventHandlerMap) AddEventHandler ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) AddEventHandler(handler FilesystemCacheEventHandler) string
AddEventHandler adds cache eventh handler
func (*FilesystemCacheEventHandlerMap) GetEventHandler ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) GetEventHandler(handlerID string) FilesystemCacheEventHandler
GetEventHandler returns event handler for the id
func (*FilesystemCacheEventHandlerMap) GetEventHandlerIDs ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) GetEventHandlerIDs() []string
GetEventHandlerIDs returns all event handler ids
func (*FilesystemCacheEventHandlerMap) GetEventHandlers ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) GetEventHandlers() []FilesystemCacheEventHandler
GetEventHandlers returns all event handlers
func (*FilesystemCacheEventHandlerMap) Release ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) Release()
Release releases resources
func (*FilesystemCacheEventHandlerMap) RemoveEventHandler ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) RemoveEventHandler(handlerID string)
RemoveEventHandler removes cache eventh handler
func (*FilesystemCacheEventHandlerMap) SendDirCreateEvent ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) SendDirCreateEvent(path string)
SendDirCreateEvent sends dir create event
func (*FilesystemCacheEventHandlerMap) SendDirExtractEvent ¶ added in v0.13.1
func (handlerMap *FilesystemCacheEventHandlerMap) SendDirExtractEvent(path string)
SendDirExtractEvent sends dir extract event
func (*FilesystemCacheEventHandlerMap) SendDirRemoveEvent ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) SendDirRemoveEvent(path string)
SendDirRemoveEvent sends dir remove event
func (*FilesystemCacheEventHandlerMap) SendEvent ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) SendEvent(path string, eventType FilesystemCacheEventType)
SendEvent sends event
func (*FilesystemCacheEventHandlerMap) SendFileCreateEvent ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) SendFileCreateEvent(path string)
SendFileCreateEvent sends file create event
func (*FilesystemCacheEventHandlerMap) SendFileRemoveEvent ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) SendFileRemoveEvent(path string)
SendFileRemoveEvent sends file remove event
func (*FilesystemCacheEventHandlerMap) SendFileUpdateEvent ¶ added in v0.10.6
func (handlerMap *FilesystemCacheEventHandlerMap) SendFileUpdateEvent(path string)
SendFileUpdateEvent sends file update event
type FilesystemCacheEventType ¶ added in v0.10.6
type FilesystemCacheEventType string
FilesystemCacheEventType defines cache
const ( // FilesystemCacheFileCreateEvent is an event type for file creation FilesystemCacheFileCreateEvent FilesystemCacheEventType = "file create" // FilesystemCacheFileRemoveEvent is an event type for file removal FilesystemCacheFileRemoveEvent FilesystemCacheEventType = "file remove" // FilesystemCacheFileUpdateEvent is an event type for file update FilesystemCacheFileUpdateEvent FilesystemCacheEventType = "file update" // FilesystemCacheDirCreateEvent is an event type for dir creation FilesystemCacheDirCreateEvent FilesystemCacheEventType = "dir create" // FilesystemCacheDirRemoveEvent is an event type for dir removal FilesystemCacheDirRemoveEvent FilesystemCacheEventType = "dir remove" // FilesystemCacheDirExtractEvent is an event type for dir extract FilesystemCacheDirExtractEvent FilesystemCacheEventType = "dir extract" )
type IRODSTicketRestrictions ¶ added in v0.12.0
type IRODSTicketRestrictions struct { // AllowedHosts is a list of allowed hosts AllowedHosts []string // AllowedUserName is a list of allowed user names AllowedUserNames []string // AllowedGroupNames is a list of allowed group names AllowedGroupNames []string }
IRODSTicketRestrictions contains irods ticket restriction information
func (*IRODSTicketRestrictions) ToString ¶ added in v0.12.0
func (ticket *IRODSTicketRestrictions) ToString() string
ToString stringifies the object
type MetadataCacheTimeoutSetting ¶ added in v0.6.1
type MetadataCacheTimeoutSetting struct { Path string `yaml:"path" json:"path"` Timeout types.Duration `yaml:"timeout" json:"timeout"` Inherit bool `yaml:"inherit,omitempty" json:"inherit,omitempty"` }
MetadataCacheTimeoutSetting defines cache timeout for path