IRISLIB database
API Class Reference

The File Management API is an implementation of access to the REST APIS from Box, Dropbox and Accellion Kiteworks. More...

Inheritance diagram for API:
Collaboration diagram for API:

Static Public Member Functions

_.Library.Status CreateFolder (_.SYS.MFT.Connection.Base connection, _.Library.String folderPath, _.MFT.ItemInfo itemInfo)
 Creates the remote folder at the specified folderPath. More...
 
_.Library.Status CreateUser (_.SYS.MFT.Connection.Base connection, _.MFT.UserInfo userInfo)
 Create a new user. More...
 
_.Library.Status DeleteFile (_.SYS.MFT.Connection.Base connection, _.Library.String path, _.Library.Boolean permanent)
 Delete the remote file. More...
 
_.Library.Status DeleteFolder (_.SYS.MFT.Connection.Base connection, _.Library.String path, _.Library.Boolean permanent)
 Delete the remote folder. More...
 
_.Library.Status DeleteUser (_.SYS.MFT.Connection.Base connection, _.Library.String username)
 Delete the user that is specified by the email address (i.e. More...
 
_.Library.Status DeleteUserById (_.SYS.MFT.Connection.Base connection, _.Library.String userid)
 Delete the user that is specified by the id.
 
_.Library.Status DownloadFile (_.SYS.MFT.Connection.Base connection, _.Library.String filePath, _.Library.String localFilePath)
 Download the specified remote file and store at the location given by localFilePath. More...
 
_.Library.Status DownloadStream (_.SYS.MFT.Connection.Base connection, _.Library.String filePath, _.Library.BinaryStream stream)
 Download the specified remote file and store in the specified stream which must be a FileBinaryStream or a GlobalBinaryStream. More...
 
_.SYS.MFT.Connection.Base GetConnection (_.Library.String connectionName, _.Library.Status sc)
 Get the connection object associated with the specified connection name.
 
_.Library.Status GetCurrentFolder (_.SYS.MFT.Connection.Base connection, _.Library.String folderPath)
 Returns the current remote folder path.
 
_.Library.Status GetFileInfo (_.SYS.MFT.Connection.Base connection, _.Library.String path, _.MFT.ItemInfo itemInfo)
 Return the item info object which describes the specified file. More...
 
_.Library.Status GetFolderContents (_.SYS.MFT.Connection.Base connection, _.Library.String folderPath, _.Library.Boolean recursive, _.MFT.FolderContents folderContents)
 Return the folder contents object for the specified folder. More...
 
_.Library.Status GetFolderInfo (_.SYS.MFT.Connection.Base connection, _.Library.String path, _.MFT.ItemInfo itemInfo)
 Return the item info object which describes the specified folder. More...
 
_.Library.String GetRequestId (_.SYS.MFT.Connection.Base connection, _.MFT.ItemInfo itemInfo)
 Get the form of id for a file or folder that is most efficient for subsequent calls. More...
 
_.Library.Status GetUser (_.SYS.MFT.Connection.Base connection, _.Library.String username, _.MFT.UserInfo userInfo)
 Retrieve the MFT.UserInfo specified by the username. More...
 
_.Library.Status GetUserById (_.SYS.MFT.Connection.Base connection, _.Library.String userid, _.MFT.UserInfo userInfo)
 Retrieve the MFT.UserInfo specified by the service defined Userid. More...
 
_.Library.Status GetUserList (_.SYS.MFT.Connection.Base connection, _.MFT.UserList userList)
 Return the list of all currently defined users for this team or enterprise.
 
_.Library.Status GetUsername (_.SYS.MFT.Connection.Base connection, _.Library.String internalId, _.Library.String username)
 Get the external username that corresponds to the specified internal user id.
 
_.Library.Status MountFolder (_.SYS.MFT.Connection.Base connection, _.Library.String folderName)
 MountFolder is a Dropbox specific method to mount a shared folder that was shared by a different user. More...
 
_.Library.Status SetCurrentFolder (_.SYS.MFT.Connection.Base connection, _.Library.String folderPath)
 Set the current remote folder path.
 
_.Library.Status ShareFolder (_.SYS.MFT.Connection.Base connection, _.Library.String path, _.Library.String accessLevel, _.Library.List users)
 Share a folder with a list of users pass as a $list. More...
 
_.Library.Status UnmountFolder (_.SYS.MFT.Connection.Base connection, _.Library.String folderName)
 UnmountFolder is a Dropbox specific method to unmount a shared folder that was shared by a different user. More...
 
_.Library.Status UnshareFolder (_.SYS.MFT.Connection.Base connection, _.Library.String path, _.Library.String user)
 Unshare a folder from a specified user. More...
 
_.Library.Status UnshareFolderAll (_.SYS.MFT.Connection.Base connection, _.Library.String path)
 Unshare a folder from all users. More...
 
_.Library.Status UploadFile (_.SYS.MFT.Connection.Base connection, _.Library.String localFilePath, _.Library.String filePath, _.Library.Boolean replace, _.MFT.ItemInfo itemInfo)
 Update the specified remote file with the contents of the specified local file. More...
 
_.Library.Status UploadStream (_.SYS.MFT.Connection.Base connection, _.Library.BinaryStream stream, _.Library.String filePath, _.Library.Boolean replace, _.MFT.ItemInfo itemInfo)
 Update the specified remote file with the contents of the specified stream. More...
 

Additional Inherited Members

- Public Member Functions inherited from RegisteredObject
_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject object, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 
- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Detailed Description

The File Management API is an implementation of access to the REST APIS from Box, Dropbox and Accellion Kiteworks.

The connection to the underlying service is defined by the connection object, a subclass of SYS.MFT.Connection.Base. This connection is passed as the first argument to each of the API calls either as the name of a saved persistent object or as a oref of a connection object. The remote files and folders being operated upon will be specified as a Unix style path. If the remote path is relative then it will be relative to the current remote folder. The root remote folder will always be denoted as "/". The local files will be specified as usual by a file system based path. If the local path is relative it will be relative to the manager directory.

The file management API will be implemented in subclasses of the MFT.API class which are particular to the vendor service.

Member Function Documentation

◆ CreateFolder()

_.Library.Status CreateFolder ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  folderPath,
_.MFT.ItemInfo  itemInfo 
)
static

Creates the remote folder at the specified folderPath.

Each level of the folder path should be created separately if it does not already exist. An MFT.ItemInfo object is returned for the new folder.

◆ CreateUser()

_.Library.Status CreateUser ( _.SYS.MFT.Connection.Base  connection,
_.MFT.UserInfo  userInfo 
)
static

Create a new user.

The Userid and Detail properties are filled in by CreateUser if it is successful.

◆ DeleteFile()

_.Library.Status DeleteFile ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path,
_.Library.Boolean  permanent 
)
static

Delete the remote file.

path may be a file path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object.
If permanent is true, then the file will be permanently deleted. Otherwise the file will be moved to trash. If the remote file does not exist at the specified path, then $$$OK is returned as status.

◆ DeleteFolder()

_.Library.Status DeleteFolder ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path,
_.Library.Boolean  permanent 
)
static

Delete the remote folder.

path may be a folder path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object.
If permanent is true, then the folder will be permanently deleted. Otherwise the folder will be moved to trash.
If the remote folder does not exist at the specified path, then $$$OK is returned as status.

◆ DeleteUser()

_.Library.Status DeleteUser ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  username 
)
static

Delete the user that is specified by the email address (i.e.

username).

◆ DownloadFile()

_.Library.Status DownloadFile ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  filePath,
_.Library.String  localFilePath 
)
static

Download the specified remote file and store at the location given by localFilePath.

filePath may be a file path. filePath may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object.

◆ DownloadStream()

_.Library.Status DownloadStream ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  filePath,
_.Library.BinaryStream  stream 
)
static

Download the specified remote file and store in the specified stream which must be a FileBinaryStream or a GlobalBinaryStream.

If stream is not specified, then a GlobalBinaryStream will be created. filePath may be a file path. filePath may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object.

◆ GetFileInfo()

_.Library.Status GetFileInfo ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path,
_.MFT.ItemInfo  itemInfo 
)
static

Return the item info object which describes the specified file.

path may be a file path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object. If a file does not exist at the specified path, then $$$OK is returned as status and itemInfo is returned as "".

◆ GetFolderContents()

_.Library.Status GetFolderContents ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  folderPath,
_.Library.Boolean  recursive,
_.MFT.FolderContents  folderContents 
)
static

Return the folder contents object for the specified folder.

folderPath may be a folder path. folderPath may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object. "" May be used as the folderPath to specify the current folder. The FolderContents object will include a list of MFT.ItemInfo objects which contain a file or folder name and some additional simple information.

◆ GetFolderInfo()

_.Library.Status GetFolderInfo ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path,
_.MFT.ItemInfo  itemInfo 
)
static

Return the item info object which describes the specified folder.

path may be a folder path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object. "" May be used as the path to specify the current folder. If a folder does not exist at the specified path, then $$$OK is returned as status and itemInfo is returned as "".

◆ GetRequestId()

_.Library.String GetRequestId ( _.SYS.MFT.Connection.Base  connection,
_.MFT.ItemInfo  itemInfo 
)
static

Get the form of id for a file or folder that is most efficient for subsequent calls.

GetRequestId will return either an id of the form "id:<id>" or a full path depending on which is more efficient. This method is included to allow the id for future requests to be saved in the most efficient form.

◆ GetUser()

_.Library.Status GetUser ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  username,
_.MFT.UserInfo  userInfo 
)
static

Retrieve the MFT.UserInfo specified by the username.

which is the email address for all currently supported services. GetUser is potentially less efficient than GetUserById. If the user does not exist, then $$$OK is returned as status and userInfo is returned as "".

◆ GetUserById()

_.Library.Status GetUserById ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  userid,
_.MFT.UserInfo  userInfo 
)
static

Retrieve the MFT.UserInfo specified by the service defined Userid.

If the user does not exist, then $$$OK is returned as status and userInfo is returned as "".

◆ MountFolder()

_.Library.Status MountFolder ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  folderName 
)
static

MountFolder is a Dropbox specific method to mount a shared folder that was shared by a different user.

MountFolder is treated as a NOP for all other services.

◆ ShareFolder()

_.Library.Status ShareFolder ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path,
_.Library.String  accessLevel,
_.Library.List  users 
)
static

Share a folder with a list of users pass as a $list.

path may be a folder path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object. The "editor" and "viewer" access levels are supported for all vendors. In addition, vendor specific access levels are supported.

◆ UnmountFolder()

_.Library.Status UnmountFolder ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  folderName 
)
static

UnmountFolder is a Dropbox specific method to unmount a shared folder that was shared by a different user.

UnmountFolder is treated as a NOP for all other services.

◆ UnshareFolder()

_.Library.Status UnshareFolder ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path,
_.Library.String  user 
)
static

Unshare a folder from a specified user.

path may be a folder path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object.

◆ UnshareFolderAll()

_.Library.Status UnshareFolderAll ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  path 
)
static

Unshare a folder from all users.

path may be a folder path. path may also be specified as an id of the form "id:<id>" which was obtained from a MFT.ItemInfo object.

◆ UploadFile()

_.Library.Status UploadFile ( _.SYS.MFT.Connection.Base  connection,
_.Library.String  localFilePath,
_.Library.String  filePath,
_.Library.Boolean  replace,
_.MFT.ItemInfo  itemInfo 
)
static

Update the specified remote file with the contents of the specified local file.

filePath must be a file path. An id may not be specified. If replace is true, then an existing file of the same name will be replaced.
The default is to return an error if a replacement is attempted.

◆ UploadStream()

_.Library.Status UploadStream ( _.SYS.MFT.Connection.Base  connection,
_.Library.BinaryStream  stream,
_.Library.String  filePath,
_.Library.Boolean  replace,
_.MFT.ItemInfo  itemInfo 
)
static

Update the specified remote file with the contents of the specified stream.

filePath must be a file path. An id may not be specified. If replace is true, then an existing file of the same name will be replaced.
The default is to return an error if a replacement is attempted.