class sap.ui.base.ManagedObjectMetadata

Visiblity: public
UX Guidelines:
Implements:
Available since: N/A
Module: sap/ui/base/ManagedObjectMetadata
Application Component: CA-UI5-COR

Note about Info Objects

Several methods in this class return info objects that describe a property, aggregation, association or event of the class described by this metadata object. The type, structure and behavior of these info objects is not yet documented and not part of the stable, public API.

Code using such methods and the returned info objects therefore needs to be aware of the following restrictions:


Constructor

Creates a new metadata object that describes a subclass of ManagedObject.

Note: Code outside the sap.ui.base namespace must not call this constructor directly. Instances will be created automatically when a new class is defined with one of the SomeClass.extend methods.

Note: throughout this class documentation, the described subclass of ManagedObject is referenced as the described class.

new sap.ui.base.ManagedObjectMetadata(sClassName, oClassInfo)
Param Type Default Value Description
sClassName string

fully qualified name of the described class

oClassInfo object

static info to construct the metadata from


Methods Overview

Method Description
sap.ui.base.ManagedObjectMetadata.addAPIParentInfoBegin

Adds information to the given oAggregatedObject about its original API parent (or a subsequent API parent in case of multiple forwarding). MUST be called before an element is forwarded to another internal aggregation (in case forwarding is done explicitly/manually without using the declarative mechanism introduced in UI5 1.56).

CAUTION: ManagedObjectMetadata.addAPIParentInfoEnd(...) MUST be called AFTER the element has been forwarded (set to an aggregation of an internal control). These two calls must wrap the forwarding.

sap.ui.base.ManagedObjectMetadata.addAPIParentInfoEnd

Completes the information about the original API parent of the given element. MUST be called after an element is forwarded to another internal aggregation. For every call to ManagedObjectMetadata.addAPIParentInfoBegin(...) this method here must be called as well.

forwardAggregation

Defines that an aggregation sForwardedSourceAggregation of the ManagedObject described by this metadata should be "forwarded" to an aggregation of an internal element within the composite.

This means that all adding, removal, or other operations happening on the source aggregation are actually called on the target instance. All elements added to the source aggregation will be located at the target aggregation (this means the target instance is their parent). Both, source and target element will return the added elements when asked for the content of the respective aggregation. If present, the named (non-generic) aggregation methods will be called for the target aggregation.

When the source aggregation is bound, the binding will by default take place there and the add/remove operations will be forwarded to the target. However, optionally the binding can also be forwarded. The result is similar - all added/bound items will reside at the target - but when the binding is forwarded, the updateAggregation method is called on the target element and the add/remove methods are only called on the target element as well.

Aggregations can only be forwarded to other aggregations of the same multiplicity (single/multiple). The target aggregation must also be "compatible" to the source aggregation in the sense that any items given to the source aggregation must also be valid in the target aggregation (otherwise the target element will throw a validation error).

If the forwarded elements use data binding, the target element must be properly aggregated by the source element to make sure all models are available there as well (this is anyway important to avoid issues).

The aggregation target must remain the same instance across the entire lifetime of the source control.

Aggregation forwarding must be set up before any instances of the control are created (recommended: within the class definition) to avoid situations where forwarding is not yet set up when the first aggregated item is added.

Aggregation forwarding will behave unexpectedly when the content in the target aggregation is modified by other actors (e.g. by the target element or by another forwarding from a different source aggregation). Hence, this is not allowed.

For any given source aggregation this method may only be called once. Calling it again overrides the previous forwarding, but leaves any already forwarded elements at their previous target.

getAggregation

Returns an info object for the named public aggregation of the described class no matter whether the aggregation was defined by the class itself or by one of its ancestor classes.

If neither the class nor its ancestor classes define a public aggregation with the given name, undefined is returned.

If the name is not given (or has a falsy value), then it is substituted by the name of the default aggregation of the 'described class' (if any).

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAggregations

Returns a map of info objects for the public aggregations of the described class. Aggregations declared by ancestor classes are not included.

The returned map keys the aggregation info objects by their name. In case of 0..1 aggregations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllAggregations

Returns a map of info objects for all public aggregations of the described class, including public aggregations form the ancestor classes.

The returned map keys the aggregation info objects by their name. In case of 0..1 aggregations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllAssociations

Returns a map of info objects for all public associations of the described class, including public associations form the ancestor classes.

The returned map keys the association info objects by their name. In case of 0..1 associations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllEvents

Returns a map of info objects for all public events of the described class, including public events form the ancestor classes.

The returned map keys the event info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllPrivateAggregations

Returns a map of info objects for all private (hidden) aggregations of the described class, including private aggregations from the ancestor classes.

The returned map contains aggregation info objects keyed by the aggregation name. In case of 0..1 aggregations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllPrivateAssociations

Returns a map of info objects for all private (hidden) associations of the described class, including private associations from the ancestor classes.

The returned map contains association info objects keyed by the association name. In case of 0..1 associations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllPrivateProperties

Returns a map of info objects for all private (hidden) properties of the described class, including private properties from the ancestor classes.

The returned map contains property info objects keyed by the property name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllProperties

Returns a map of info objects for all public properties of the described class, including public properties from the ancestor classes.

The returned map keys the property info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAssociation

Returns an info object for the named public association of the described class, no matter whether the association was defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define an association with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAssociations

Returns a map of info objects for all public associations of the described class. Associations declared by ancestor classes are not included.

The returned map keys the association info objects by their name. In case of 0..1 associations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getDefaultAggregation

Returns an info object for the default aggregation of the described class.

If the class itself does not define a default aggregation, then the info object for the default aggregation of the parent class is returned.

getDefaultAggregationName

Returns the name of the default aggregation of the described class.

If the class itself does not define a default aggregation, then the default aggregation of the parent is returned. If no class in the hierarchy defines a default aggregation, undefined is returned.

getEvent

Returns an info object for the named public event of the described class, no matter whether the event was defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define an event with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getEvents

Returns a map of info objects for the public events of the described class. Events declared by ancestor classes are not included.

The returned map keys the event info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getLibraryName

Returns the name of the library that contains the described UIElement.

getManagedAggregation

Returns the info object for the named public or private aggregation declared by the described class or by any of its ancestors.

If the name is not given (or has a falsy value), then it is substituted by the name of the default aggregation of the described class (if it is defined).

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getManagedAssociation

Returns the info object for the named public or private association declared by the described class or by any of its ancestors.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getManagedProperty

Returns the info object for the named public or private property declared by the described class or by any of its ancestors.

If the name is not given (or has a falsy value), then it is substituted by the name of the default property of the described class (if it is defined).

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getProperties

Returns a map of info objects for the public properties of the described class. Properties declared by ancestor classes are not included.

The returned map keys the property info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getProperty

Returns an info object for the named public property of the described class, no matter whether the property was defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define a property with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getPropertyDefaults

Returns a map of default values for all properties declared by the described class and its ancestors, keyed by the property name.

getPropertyLikeSetting

Returns an info object for a public setting with the given name that either is a public property or a public aggregation of cardinality 0..1 and with at least one simple alternative type. The setting can be defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define a suitable setting with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

hasAggregation

Checks the existence of the given public aggregation by its name.

hasAssociation

Checks the existence of the given public association by its name

hasEvent

Checks the existence of the given event by its name

hasProperty

Checks the existence of the given public property by its name

sap.ui.base.ManagedObjectMetadata.isGeneratedId

Test whether a given ID looks like it was automatically generated.

Examples:

True for:
  "foo--__bar04--baz"
  "foo--__bar04"
  "__bar04--baz"
  "__bar04"
  "__bar04--"
  "__bar04--foo"
False for:
  "foo__bar04"
  "foo__bar04--baz"

See sap.ui.base.ManagedObjectMetadata.prototype.uid for details on ID generation.

loadDesignTime

Load and returns the design time metadata asynchronously. It inherits/merges parent design time metadata and if provided merges also instance specific design time metadata that was provided via the dt namespace.

Be aware that ManagedObjects do not ensure to have unique IDs. This may lead to issues if you would like to persist DesignTime based information. In that case you need to take care of identification yourself.

sap.ui.base.ManagedObjectMetadata.setDesignTimeDefaultMapping

Sets the map with the module names to predefined DesignTime objects which will be available in sap.ui.base.ManagedObjectMetadata.prototype.loadDesignTime

uid

Calculates a new ID for an instance of this class.

Note that the calculated short name part is usually not unique across all classes, but doesn't have to be. It might even be empty when the class name consists of invalid characters only.

sap.ui.base.ManagedObjectMetadata.uid

Calculates a new ID based on a prefix.

To guarantee uniqueness of the generated IDs across all ID prefixes, prefixes must not end with digits.

sap.ui.base.ManagedObjectMetadata.addAPIParentInfoBegin

Adds information to the given oAggregatedObject about its original API parent (or a subsequent API parent in case of multiple forwarding). MUST be called before an element is forwarded to another internal aggregation (in case forwarding is done explicitly/manually without using the declarative mechanism introduced in UI5 1.56).

CAUTION: ManagedObjectMetadata.addAPIParentInfoEnd(...) MUST be called AFTER the element has been forwarded (set to an aggregation of an internal control). These two calls must wrap the forwarding.

Param Type DefaultValue Description
oAggregatedObject sap.ui.base.ManagedObject

Object to which the new API parent info should be added

oParent sap.ui.base.ManagedObject

Object that is a new API parent

sAggregationName string

the name of the aggregation under which oAggregatedObject is aggregated by the API parent

sap.ui.base.ManagedObjectMetadata.addAPIParentInfoEnd

Completes the information about the original API parent of the given element. MUST be called after an element is forwarded to another internal aggregation. For every call to ManagedObjectMetadata.addAPIParentInfoBegin(...) this method here must be called as well.

Param Type DefaultValue Description
oAggregatedObject sap.ui.base.ManagedObject

Object to which the new API parent info should be added

forwardAggregation

Defines that an aggregation sForwardedSourceAggregation of the ManagedObject described by this metadata should be "forwarded" to an aggregation of an internal element within the composite.

This means that all adding, removal, or other operations happening on the source aggregation are actually called on the target instance. All elements added to the source aggregation will be located at the target aggregation (this means the target instance is their parent). Both, source and target element will return the added elements when asked for the content of the respective aggregation. If present, the named (non-generic) aggregation methods will be called for the target aggregation.

When the source aggregation is bound, the binding will by default take place there and the add/remove operations will be forwarded to the target. However, optionally the binding can also be forwarded. The result is similar - all added/bound items will reside at the target - but when the binding is forwarded, the updateAggregation method is called on the target element and the add/remove methods are only called on the target element as well.

Aggregations can only be forwarded to other aggregations of the same multiplicity (single/multiple). The target aggregation must also be "compatible" to the source aggregation in the sense that any items given to the source aggregation must also be valid in the target aggregation (otherwise the target element will throw a validation error).

If the forwarded elements use data binding, the target element must be properly aggregated by the source element to make sure all models are available there as well (this is anyway important to avoid issues).

The aggregation target must remain the same instance across the entire lifetime of the source control.

Aggregation forwarding must be set up before any instances of the control are created (recommended: within the class definition) to avoid situations where forwarding is not yet set up when the first aggregated item is added.

Aggregation forwarding will behave unexpectedly when the content in the target aggregation is modified by other actors (e.g. by the target element or by another forwarding from a different source aggregation). Hence, this is not allowed.

For any given source aggregation this method may only be called once. Calling it again overrides the previous forwarding, but leaves any already forwarded elements at their previous target.

Param Type DefaultValue Description
sForwardedSourceAggregation string

The name of the aggregation to be forwarded

mOptions object

The forwarding target as well as additional options

getter string function

The function that returns the target element instance (the "this" context inside the function is the source instance), or the name of such a function on this ManagedObject type. Either getter or idSuffix (but not both) must be defined.

idSuffix string

The ID suffix of the target element (the full target ID is the source instance ID plus this suffix, the target element must always be instantiated after the init() method has been executed). Either getter or idSuffix (but not both) must be defined.

aggregation string

The name of the aggregation on the target instance where the forwarding should lead to

forwardBinding boolean

Whether a binding of the source aggregation should also be forwarded to the target aggregation or rather handled on the source aggregation, so only the resulting aggregation method calls are forwarded

getAggregation

Returns an info object for the named public aggregation of the described class no matter whether the aggregation was defined by the class itself or by one of its ancestor classes.

If neither the class nor its ancestor classes define a public aggregation with the given name, undefined is returned.

If the name is not given (or has a falsy value), then it is substituted by the name of the default aggregation of the 'described class' (if any).

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the aggregation or empty

getAggregations

Returns a map of info objects for the public aggregations of the described class. Aggregations declared by ancestor classes are not included.

The returned map keys the aggregation info objects by their name. In case of 0..1 aggregations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllAggregations

Returns a map of info objects for all public aggregations of the described class, including public aggregations form the ancestor classes.

The returned map keys the aggregation info objects by their name. In case of 0..1 aggregations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllAssociations

Returns a map of info objects for all public associations of the described class, including public associations form the ancestor classes.

The returned map keys the association info objects by their name. In case of 0..1 associations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllEvents

Returns a map of info objects for all public events of the described class, including public events form the ancestor classes.

The returned map keys the event info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllPrivateAggregations

Returns a map of info objects for all private (hidden) aggregations of the described class, including private aggregations from the ancestor classes.

The returned map contains aggregation info objects keyed by the aggregation name. In case of 0..1 aggregations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllPrivateAssociations

Returns a map of info objects for all private (hidden) associations of the described class, including private associations from the ancestor classes.

The returned map contains association info objects keyed by the association name. In case of 0..1 associations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllPrivateProperties

Returns a map of info objects for all private (hidden) properties of the described class, including private properties from the ancestor classes.

The returned map contains property info objects keyed by the property name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAllProperties

Returns a map of info objects for all public properties of the described class, including public properties from the ancestor classes.

The returned map keys the property info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getAssociation

Returns an info object for the named public association of the described class, no matter whether the association was defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define an association with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the association

getAssociations

Returns a map of info objects for all public associations of the described class. Associations declared by ancestor classes are not included.

The returned map keys the association info objects by their name. In case of 0..1 associations this is the singular name, otherwise it is the plural name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getDefaultAggregation

Returns an info object for the default aggregation of the described class.

If the class itself does not define a default aggregation, then the info object for the default aggregation of the parent class is returned.

getDefaultAggregationName

Returns the name of the default aggregation of the described class.

If the class itself does not define a default aggregation, then the default aggregation of the parent is returned. If no class in the hierarchy defines a default aggregation, undefined is returned.

getEvent

Returns an info object for the named public event of the described class, no matter whether the event was defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define an event with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the event

getEvents

Returns a map of info objects for the public events of the described class. Events declared by ancestor classes are not included.

The returned map keys the event info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getLibraryName

Returns the name of the library that contains the described UIElement.

getManagedAggregation

Returns the info object for the named public or private aggregation declared by the described class or by any of its ancestors.

If the name is not given (or has a falsy value), then it is substituted by the name of the default aggregation of the described class (if it is defined).

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sAggregationName string

name of the aggregation to be retrieved or empty

getManagedAssociation

Returns the info object for the named public or private association declared by the described class or by any of its ancestors.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the association to be retrieved

getManagedProperty

Returns the info object for the named public or private property declared by the described class or by any of its ancestors.

If the name is not given (or has a falsy value), then it is substituted by the name of the default property of the described class (if it is defined).

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the property to be retrieved or empty

getProperties

Returns a map of info objects for the public properties of the described class. Properties declared by ancestor classes are not included.

The returned map keys the property info objects by their name.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

getProperty

Returns an info object for the named public property of the described class, no matter whether the property was defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define a property with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the property

getPropertyDefaults

Returns a map of default values for all properties declared by the described class and its ancestors, keyed by the property name.

getPropertyLikeSetting

Returns an info object for a public setting with the given name that either is a public property or a public aggregation of cardinality 0..1 and with at least one simple alternative type. The setting can be defined by the class itself or by one of its ancestor classes.

If neither the described class nor its ancestor classes define a suitable setting with the given name, undefined is returned.

Warning: Type, structure and behavior of the returned info objects is not documented and therefore not part of the API. See the Notes about Info objects in the constructor documentation of this class.

Param Type DefaultValue Description
sName string

name of the property like setting

hasAggregation

Checks the existence of the given public aggregation by its name.

Param Type DefaultValue Description
sName string

name of the aggregation

hasAssociation

Checks the existence of the given public association by its name

Param Type DefaultValue Description
sName string

name of the association

hasEvent

Checks the existence of the given event by its name

Param Type DefaultValue Description
sName string

name of the event

hasProperty

Checks the existence of the given public property by its name

Param Type DefaultValue Description
sName string

name of the property

sap.ui.base.ManagedObjectMetadata.isGeneratedId

Test whether a given ID looks like it was automatically generated.

Examples:

True for:
  "foo--__bar04--baz"
  "foo--__bar04"
  "__bar04--baz"
  "__bar04"
  "__bar04--"
  "__bar04--foo"
False for:
  "foo__bar04"
  "foo__bar04--baz"

See sap.ui.base.ManagedObjectMetadata.prototype.uid for details on ID generation.

Param Type DefaultValue Description
sId string

the ID that should be tested

loadDesignTime

Load and returns the design time metadata asynchronously. It inherits/merges parent design time metadata and if provided merges also instance specific design time metadata that was provided via the dt namespace.

Be aware that ManagedObjects do not ensure to have unique IDs. This may lead to issues if you would like to persist DesignTime based information. In that case you need to take care of identification yourself.

Param Type DefaultValue Description
oManagedObject sap.ui.base.ManagedObject

instance that could have instance specific design time metadata

sScopeKey string

scope name for which metadata will be resolved, see sap.ui.base.ManagedObjectMetadataScope

sap.ui.base.ManagedObjectMetadata.setDesignTimeDefaultMapping

Sets the map with the module names to predefined DesignTime objects which will be available in sap.ui.base.ManagedObjectMetadata.prototype.loadDesignTime

Param Type DefaultValue Description
mPredefinedDesignTime Object<string,string>

map containing the module names

uid

Calculates a new ID for an instance of this class.

Note that the calculated short name part is usually not unique across all classes, but doesn't have to be. It might even be empty when the class name consists of invalid characters only.

sap.ui.base.ManagedObjectMetadata.uid

Calculates a new ID based on a prefix.

To guarantee uniqueness of the generated IDs across all ID prefixes, prefixes must not end with digits.

Param Type DefaultValue Description
sIdPrefix string

prefix for the new ID