[I] MetadataInfo
Provides information about changes that happen to a data type’s payload when inapplicable metadata is added or invisible properties are removed.
Results are computed on demand and expensive computations are memoized.
Methods
getEffectivePayloadType()
getEffectivePayloadType(type, visibility): Type
If type is an anonymous model, tries to find a named model that has the same set of properties when non-payload properties are excluded.
Parameters
Parameter | Type |
---|---|
type | Type |
visibility | Visibility |
Returns
Type
isEmptied()
isEmptied(type, visibility): boolean
Determines if the given type is a model that becomes empty once applicable metadata is removed and visibility is applied.
Note that a model is not considered emptied if it was already empty in the first place, or has a base model or indexer.
When the type of a property is emptied by visibility, the property itself is also removed.
Parameters
Parameter | Type |
---|---|
type | undefined | Type |
visibility | Visibility |
Returns
boolean
Deprecated
This produces inconsistent behaviors and should be avoided.
isOptional()
isOptional(property, visibility): boolean
Determines if the given property is optional in the request or response payload for the given visibility.
Parameters
Parameter | Type |
---|---|
property | ModelProperty |
visibility | Visibility |
Returns
boolean
isPayloadProperty()
isPayloadProperty( property, visibility, inExplicitBody?): boolean
Determines if the given property is part of the request or response payload and not applicable metadata isApplicableMetadata or filtered out by the given visibility.
Parameters
Parameter | Type |
---|---|
property | ModelProperty |
visibility | Visibility |
inExplicitBody ? | boolean |
Returns
boolean
isTransformed()
isTransformed(type, visibility): boolean
Determines if the given type is transformed by applying the given visibility and removing invisible properties or adding inapplicable metadata properties.
Parameters
Parameter | Type |
---|---|
type | undefined | Type |
visibility | Visibility |
Returns
boolean