39 &afw_s_sourceLocation, source_location, xctx);
46 "missing type property",
59 conf_type->
create(type, conf, source_location, p, xctx);
77 if (!source_location) {
78 source_location = &afw_s_Configuration;
82 for (iterator = NULL, count = 1;; count++) {
120 &afw_s_extensionId, p, xctx);
125 "\"extension_id\" required.",
130 &afw_s_modulePath, p, xctx);
138 &afw_s_modulePath, xctx);
144 "\"modulePath\" needed for \"extension\" %" AFW_UTF8_FMT ".",
174 properties, &afw_s_sourceLocation, xctx);
175 if (!source_location) {
176 source_location = &afw_s_a_empty_string;
182 if (!type || type->len == 0) {
205 if (!subtype || subtype->len == 0) {
221 if (!
id || id->len == 0) {
238 (
const char *)((subtype) ?
"_" :
""),
239 (
int)((subtype) ? (
int)subtype->len : 0),
240 (
const char *)((subtype) ? (
const char *)subtype->s :
""),
245 if (source_location == &afw_s_a_empty_string) {
246 source_location = path;
248 &afw_s_sourceLocation, source_location, xctx);
257 path, &afw_object_options_composite_normalize_defaults_required,
264 " configuration error(s) logged",
AFW_DEFINE(const afw_object_t *)
Adaptive Framework Core Internal.
#define afw_value_is_object(A_VALUE)
Macro to determine if value is evaluated object.
#define afw_object_old_get_property_as_string(object, property_name, xctx)
Get property function for data type string value.
afw_object_set_property_as_string(const afw_object_t *object, const afw_utf8_t *property_name, const afw_utf8_t *internal, afw_xctx_t *xctx)
Set property function for data type string values.
#define AFW_UTF8_FMT_ARG(A_STRING)
Convenience Macro for use with AFW_UTF8_FMT to specify arg.
#define AFW_UTF8_CONTEXTUAL_LABEL_FMT
Format string used for source location.
struct afw_iterator_s afw_iterator_t
#define AFW_UTF8_FMT
Format string specifier used for afw_utf8_t.
void afw_environment_internal_extension_conf_type_create_cede_p(const afw_utf8_t *type, const afw_object_t *entry, const afw_utf8_t *source_location, const afw_pool_t *p, afw_xctx_t *xctx)
type=extension conf handler.
const afw_environment_conf_type_t * afw_environment_get_conf_type(const afw_utf8_t *type, afw_xctx_t *xctx)
Get the conf_type associated with type.
afw_environment_prepare_conf_type_properties(const afw_object_t *properties, afw_xctx_t *xctx)
Prepare properties for a conf type.
afw_environment_load_extension(const afw_utf8_t *extension_id, const afw_utf8_t *module_path, const afw_object_t *properties, afw_xctx_t *xctx)
Load and initialize environment extension.
afw_environment_configure_with_object(const afw_object_t *conf, const afw_utf8_t *source_location, afw_xctx_t *xctx)
Configure environment with a configuration entry.
afw_environment_configure_with_object_list(const afw_list_t *entry_list, const afw_utf8_t *source_location, afw_xctx_t *xctx)
Configure environment with list of configuration entries.
#define AFW_THROW_ERROR_FZ(code, xctx, format_z,...)
Macro used to set error and 0 rv in xctx and throw it.
#define afw_list_get_next_value(instance, iterator, p, xctx)
Call method get_next_value of interface afw_list.
afw_object_view_create(const afw_object_t *instance, const afw_utf8_t *entity_path, const afw_object_options_t *options, const afw_pool_t *p, afw_xctx_t *xctx)
Create an object view of an object in specified pool.
afw_object_create_clone(const afw_object_t *object, const afw_pool_t *p, afw_xctx_t *xctx)
Clone an object to a specified pool.
afw_object_old_get_property_as_utf8(const afw_object_t *instance, const afw_utf8_t *property_name, const afw_pool_t *p, afw_xctx_t *xctx)
Get an object's property value as a string in specified pool.
const afw_pool_t * afw_pool_create_multithreaded(const afw_pool_t *parent, afw_xctx_t *xctx)
Create a new multithreaded pool.
afw_runtime_get_object(const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, afw_xctx_t *xctx)
Get a runtime object.
afw_boolean_t afw_utf8_equal(const afw_utf8_t *s1, const afw_utf8_t *s2)
Check to see if a string equals another string.
const afw_utf8_t * afw_utf8_clone(const afw_utf8_t *string, const afw_pool_t *p, afw_xctx_t *xctx)
Clone a utf-8 string into a specific pool.
afw_utf8_printf(const afw_pool_t *p, afw_xctx_t *xctx, const afw_utf8_z_t *format,...)
Create a utf-8 string using a c format string in specified pool.
Struct for afw environment conf type.
const afw_utf8_t * subtype_property_name
Subtype property name for instances of this conf type.
const afw_utf8_t * id_property_name
Id property name for instances of this conf type.
afw_environment_conf_type_create_cede_p_t create
Create function for this type.
Interface afw_list public struct.
Interface afw_object public struct.
Interface afw_pool public struct.
NFC normalized UTF-8 string.
struct for data type object values.
Interface afw_value public struct.
Interface afw_xctx public struct.