Modules/FileSystem: Difference between revisions
(added Linux version of the FileSystem module) |
m (clarified arch of new 64bit release (Windows AMD64)) |
||
(16 intermediate revisions by 3 users not shown) | |||
Line 3: | Line 3: | ||
{{Module_Info| | {{Module_Info| | ||
name = FileSystem | | name = FileSystem | | ||
version = | version = 2.0 | | ||
author = [[User:The_GTA|Martin Turski (The_GTA)]] | | author = [[User:The_GTA|Martin Turski (The_GTA)]] | | ||
module_website = [ | module_website = [http://eirfs.osdn.jp/ Here] | | ||
download_link = [https:// | download_link = [https://green-candy.osdn.jp/external/releases/fileSystem_2_0_win32.zip Win32] [https://green-candy.osdn.jp/external/releases/fileSystem_2_0_x64.zip AMD64 (Win)] [https://green-candy.osdn.jp/external/releases/fileSystem_2_0_linux.zip Linux (AMD64)] | | ||
license = | license = [https://green-candy.osdn.jp/external/licenses/license_mtamodule.txt here] | | ||
written_in = C++ | | written_in = C++ | | ||
operating_system = Cross-platform | | operating_system = Cross-platform | | ||
compatible_with = 1.X | | compatible_with = 1.X | | ||
}} | }} | ||
FileSystem is the [[MTA:Eir]] file management implementation exported as MTA:BLUE module. It is made for those people who are not satisfied with the standard MTA file functions. Its feature-set covers '''binary stream writing''', '''directory scanning''' and '''path resolution logic'''. It should satisfy all needs regarding file functionality. The modules' source code is released within the MTA:Eir SVN. | FileSystem is the [[MTA:Eir]] file management implementation exported as MTA:BLUE module. It is made for those people who are not satisfied with the standard MTA file functions. Its feature-set covers '''binary stream writing''', '''directory scanning''' and '''path resolution logic'''. It should satisfy all needs regarding file functionality. The modules' source code is released [https://osdn.net/projects/green-candy/scm/svn/tree/head/blueMods/fileSystem/ within the MTA:Eir SVN]. | ||
It's documentation can be found [[MTA:Eir/FileSystem|here]]. To find coding examples, ''browse the individual class methods''. | |||
==Installing FileSystem into your Server== | ==Installing FileSystem into your Server== | ||
*Place the fileSystem*.dll module into your MTA server modules directory | *Place the fileSystem*.dll module into your MTA server modules directory | ||
*Add the module into the mtaserver.conf module loading list (at the bottom of the file) | *Add the module into the mtaserver.conf module loading list (at the bottom of the file) | ||
*'''Edit the acl.xml in a way that resources require admin rights to call''' [[ | *'''Edit the acl.xml in a way that resources require admin rights to call''' [[Modules/FileSystem/createFilesystemInterface|createFilesystemInterface]]'' | ||
==System Access Possibilities== | ==System Access Possibilities== | ||
Line 27: | Line 27: | ||
'''Be careful how you expose the FileSystem module to your server resources!''' | '''Be careful how you expose the FileSystem module to your server resources!''' | ||
==OOP-style API== | |||
Since version 2.0 of this library the API has been changed to match the MTA OOP-style API. This means that object methods are now accessed solely using the '''colon operator''' instead of the '''dot operator'''. If you have old FileSystem code (pre 2.0) then you may have to adjust it. | |||
==Support== | ==Support== | ||
If you are looking for direct support about this module then contact [https://forum.mtasa.com/profile/9756-the_gta/ The_GTA on the MTA forums]. The official MTA forums support topic can be found [https://forum.mtasa.com/topic/133936-filesystem-module-for-mtablue/ here]. | |||
*[[Modules/FileSystem/Porting_Between_Clientside_and_Serverside|Porting Clientside and Serverside code]] | |||
{{: | {{:Modules/FileSystem/functions}} | ||
[[Category:Modules]] | [[Category:Modules]] |
Latest revision as of 23:08, 29 March 2023
Module info | |
Name | FileSystem |
Version | 2.0 |
Author | Martin Turski (The_GTA) |
Module website | Here |
Download link | Win32 AMD64 (Win) Linux (AMD64) |
License | here |
Written in | C++ |
Operating system | Cross-platform |
Compatible with | 1.X |
FileSystem is the MTA:Eir file management implementation exported as MTA:BLUE module. It is made for those people who are not satisfied with the standard MTA file functions. Its feature-set covers binary stream writing, directory scanning and path resolution logic. It should satisfy all needs regarding file functionality. The modules' source code is released within the MTA:Eir SVN.
It's documentation can be found here. To find coding examples, browse the individual class methods.
Installing FileSystem into your Server
- Place the fileSystem*.dll module into your MTA server modules directory
- Add the module into the mtaserver.conf module loading list (at the bottom of the file)
- Edit the acl.xml in a way that resources require admin rights to call createFilesystemInterface
System Access Possibilities
- Accessing whole system
- Listing and editing all server resources
- Modifying MTA Server configuration
Be careful how you expose the FileSystem module to your server resources!
OOP-style API
Since version 2.0 of this library the API has been changed to match the MTA OOP-style API. This means that object methods are now accessed solely using the colon operator instead of the dot operator. If you have old FileSystem code (pre 2.0) then you may have to adjust it.
Support
If you are looking for direct support about this module then contact The_GTA on the MTA forums. The official MTA forums support topic can be found here.
FileSystem Library Functions
FileSystem Namespace Functions
- createTranslator
- createRAMDisk
- createMemoryFile
- createFileIterative
- copyFile
- copyStream
- copyStreamCount
- pathToFilename
- streamCompare
- topointer
- type
- setDoBufferAllRaw
- getDoBufferAllRaw
FileSystem Object Functions
FileSystem Translator Functions
- open
- exists
- createDir
- chdir
- delete
- copy
- rename
- size
- stat
- relPath
- relPathRoot
- absPath
- absPathRoot
- scanDir
- scanDirEx
- getDirs
- getFiles
- setOutbreakEnabled
- getOutbreakEnabled
- setPathProcessingMode
- getPathProcessingMode