3#include <NDEVR/Buffer.h>
4#include <NDEVR/String.h>
5#include <NDEVR/TranslatedString.h>
75 , config_type(config_type)
76 , platform_type(platform_type)
81 return os_type.hasSubString(os);
85 return config_type.hasSubString(os);
89 return platform_type.hasSubString(os);
The equivelent of std::vector but with a bit more control. The basic array unit of the library.
Definition Buffer.hpp:56
Stores all dependencies for a combination of modules that make up a complete software package.
Definition ModuleResourceManager.h:239
String launch_function
Definition ModuleResourceManager.h:247
Buffer< FireWallException > firewall_exceptions
Definition ModuleResourceManager.h:242
Buffer< FileHandler > file_handlers
Definition ModuleResourceManager.h:244
Buffer< String > permissions
Definition ModuleResourceManager.h:243
Buffer< ModuleDependency > dependencies
Definition ModuleResourceManager.h:241
Buffer< RegistryKeyAction > registry_actions
Definition ModuleResourceManager.h:245
ModuleConfiguration supported_configurations
Definition ModuleResourceManager.h:246
The core String class for the NDEVR API.
Definition String.h:69
Any text displayed to the user should be defined as a TranslatedString which allows the program to lo...
Definition TranslatedString.h:13
RegistryActionType
Available registry actions that can be taken on program installation.
Definition ModuleResourceManager.h:155
DependecyType
Stores the type of dependency for a Module or resource.
Definition ModuleResourceManager.h:51
@ e_source_folder
Definition ModuleResourceManager.h:60
@ e_module
Definition ModuleResourceManager.h:55
@ e_type
Definition ModuleResourceManager.h:56
@ e_library
Definition ModuleResourceManager.h:53
@ e_rcc_resource
Definition ModuleResourceManager.h:59
@ e_bundled_folder
Definition ModuleResourceManager.h:58
@ e_executable
Definition ModuleResourceManager.h:54
@ e_file
Definition ModuleResourceManager.h:52
@ e_firewall_exception
Definition ModuleResourceManager.h:57
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:96
RegistryType
Available registry actions that can be taken on program installation.
Definition ModuleResourceManager.h:165
Stores String variables reprenting the type of compile configuration that will be supported by a part...
Definition ModuleResourceManager.h:28
static String release
Definition ModuleResourceManager.h:30
static String all
Definition ModuleResourceManager.h:31
static String debug
Definition ModuleResourceManager.h:29
Defines for a given type (such as sint04, fltp08, UUID, etc) a maximum, minimum, and reserved 'invali...
Definition BaseValues.hpp:233
A description of the type of file a Module or resource can handle.
Definition ModuleResourceManager.h:135
String id
Definition ModuleResourceManager.h:136
String content_type
Definition ModuleResourceManager.h:137
Buffer< FileHandlerVerb > verbs
Definition ModuleResourceManager.h:138
Stores information relating to a type of file the module can preview or handle.
Definition ModuleResourceManager.h:145
String icon
Definition ModuleResourceManager.h:146
bool advertise
Definition ModuleResourceManager.h:147
Buffer< FileHanderExtension > extensions
Definition ModuleResourceManager.h:148
Stores variables needed to perform a file action for a particular Module or resource.
Definition ModuleResourceManager.h:125
String argument
Definition ModuleResourceManager.h:128
String id
Definition ModuleResourceManager.h:126
String command
Definition ModuleResourceManager.h:127
Stores information relating to a particular FireWallException needed by a Module or feature.
Definition ModuleResourceManager.h:112
String protocol
Definition ModuleResourceManager.h:114
String profile
Definition ModuleResourceManager.h:115
String scope
Definition ModuleResourceManager.h:116
bool ignore_failure
Definition ModuleResourceManager.h:118
uint04 port
Definition ModuleResourceManager.h:117
Buffer< String > remote_addresses
Definition ModuleResourceManager.h:113
Stores all information relating to a particular feature or resource included by a Module.
Definition ModuleResourceManager.h:67
bool neededForConfig(const String &os) const
Definition ModuleResourceManager.h:83
ModuleConfiguration(const String &os_type, const String &config_type, const String &platform_type)
Definition ModuleResourceManager.h:73
bool neededForOS(const String &os) const
Definition ModuleResourceManager.h:79
String config_type
Definition ModuleResourceManager.h:94
String os_type
Definition ModuleResourceManager.h:93
static String Combine(std::initializer_list< String > l)
String platform_type
Definition ModuleResourceManager.h:95
bool neededForPlatform(const String &os) const
Definition ModuleResourceManager.h:87
static String & Remove(String &s, std::initializer_list< String > l)
ModuleConfiguration()
Definition ModuleResourceManager.h:68
A dependency of a Module. Either a resource, or install action, defined by the module and automatical...
Definition ModuleResourceManager.h:217
ModuleDependency(const String &resource, const String &os_type, const String &config_type, const String &platform_type=PlatformType::all)
Definition ModuleResourceManager.h:223
String os_type
Definition ModuleResourceManager.h:232
FireWallException getAsFirewallException() const
ModuleDependency(DependecyType type, const String &resource, const String &os_type, const String &config_type, const String &platform_type=PlatformType::all)
Definition ModuleResourceManager.h:218
String resource
Definition ModuleResourceManager.h:231
ModuleDependency(const FireWallException &exception, const String &os_type, const String &config_type, const String &platform_type=PlatformType::all)
describes the Module or feature to the end user.
Definition ModuleResourceManager.h:102
TranslatedString description
Definition ModuleResourceManager.h:105
TranslatedString name
Definition ModuleResourceManager.h:104
String id
Definition ModuleResourceManager.h:103
Stores String variables reprenting the type of OS that will be supported by a particular module or re...
Definition ModuleResourceManager.h:14
static String all
Definition ModuleResourceManager.h:20
static String wasm
Definition ModuleResourceManager.h:19
static String ios
Definition ModuleResourceManager.h:18
static String android
Definition ModuleResourceManager.h:16
static String macx
Definition ModuleResourceManager.h:17
static String windows
Definition ModuleResourceManager.h:15
Information about a requested OS-permission typically requested at install time.
Definition ModuleResourceManager.h:177
bool all_rights
Definition ModuleResourceManager.h:194
bool execute
Definition ModuleResourceManager.h:189
bool create_file
Definition ModuleResourceManager.h:183
bool create_child
Definition ModuleResourceManager.h:182
bool notify
Definition ModuleResourceManager.h:191
String domain
Definition ModuleResourceManager.h:178
bool enumerate_subkey
Definition ModuleResourceManager.h:188
bool change_permission
Definition ModuleResourceManager.h:181
bool create_subkey
Definition ModuleResourceManager.h:185
bool write
Definition ModuleResourceManager.h:193
String user
Definition ModuleResourceManager.h:179
bool delete_object
Definition ModuleResourceManager.h:186
bool append
Definition ModuleResourceManager.h:180
bool delete_child
Definition ModuleResourceManager.h:187
bool take_ownership
Definition ModuleResourceManager.h:192
bool read
Definition ModuleResourceManager.h:190
bool create_link
Definition ModuleResourceManager.h:184
Information about a specific registry action to be taken, typically at install-time.
Definition ModuleResourceManager.h:201
RegistryActionType action
Definition ModuleResourceManager.h:206
String root
Definition ModuleResourceManager.h:202
String value
Definition ModuleResourceManager.h:204
bool ownership
Definition ModuleResourceManager.h:208
Buffer< Permission > permissions
Definition ModuleResourceManager.h:207
bool is_key_path
Definition ModuleResourceManager.h:209
RegistryType type
Definition ModuleResourceManager.h:205
String path
Definition ModuleResourceManager.h:203