COSPROPERTYSERVICE_PROPERTYSETFACTORY(3erl)

πŸ“¦
version 5.2.2 Β· 2 versions
, in fedora 43, fedora 44

πŸ’– CosPropertyService_PropertySetFactory β€” the Erlang module definition, bestie πŸ’–

manual page: CosPropert...ySetFactory(3) β€” Erlang Module Definition πŸ¦‹

okay so. welcome to the group chat. this is the PropertySetFactory module and she is, lowkey, the plug for making brand new property sets. let's get into it ✨


🌸 NAME 🌸

CosPropertyService_PropertySetFactory β€” this module implements the OMG CosPropertyService::PropertySetFactory interface. that's it, that's the girl. periodt πŸ’…


πŸŽ€ DESCRIPTION πŸŽ€

so if you wanna get access to the record definitions for the structures (and bestie, you do), use this:

-include_lib("cosProperty/include/CosPropertyService.hrl").

that's the magic little include line. put it in your file and the records just show up like 🧚✨


πŸ‘‘ EXPORTS πŸ‘‘

πŸ’œ create_propertyset(Factory) -> PropertySet

Types:

Factory = PropertySet = #objref

this operation creates a new PropertySet with no predefined properties. a blank canvas. a fresh face. no notes πŸ’–


🌈 create_constrained_propertyset(Factory, PropertyTypes, Properties) -> Reply

Types:

Factory = #objref
PropertyTypes = [CORBA::TypeCode]
Properties = [#'CosPropertyService_Property'{property_name = Name, property_value = Value}]
Name = string()
Value = #any
Reply = {'EXCEPTION', #CosPropertyService_ConstraintNotSupported{}} | PropertySet
PropertySet = #objref

this operation creates a new PropertySet with specific constraints. PropertyTypes states the allowed TypeCode's and Properties holds valid CosPropertyService::Property data. so like, you're setting the rules up front and the set has to live by them. boundaries, queen πŸ‘‘


πŸ¦‹ create_initial_propertyset(Factory, Properties) -> Reply

Types:

Factory = #objref
Properties = [#'CosPropertyService_Property'{property_name = Name, property_value = Value}]
Name = string()
Value = #any
Reply = {'EXCEPTION', #CosPropertyService_MultipleExceptions{exceptions = Excs}} | PropertySet
Excs = [#'CosPropertyService_PropertyException{reason = Reason, failing_property_name = Name}]
Reason = invalid_property_name | conflicting_property | property_not_found | unsupported_type_code | unsupported_property | unsupported_mode | fixed_property | read_only_property
PropertySet = #objref

this operation creates a new PropertySet with specific initial properties. it's giving "here's your starter pack" πŸ“ and if something in there is messy, you get the 'EXCEPTION' with a whole list of #CosPropertyService_PropertyException{} records telling you exactly which property name failed and why. the reasons are: invalid_property_name, conflicting_property, property_not_found, unsupported_type_code, unsupported_property, unsupported_mode, fixed_property, read_only_property. so many ways to be wrong but she'll tell you fr fr 😭

no cap: if the exception comes back, it's a #CosPropertyService_MultipleExceptions{exceptions = Excs} β€” plural, bestie. multiple. read all of them, don't skim πŸ™ˆ

that's the whole page!! go make some property sets, you're gonna ate πŸ’…

πŸ’– this page brought to you by Ericsson AB β€” cosProperty 5.2.2 β€” and the date on the original footer, mwah πŸ’– 🌟

πŸ“¦ where this page comes from