Super class for all representations of OData v4 entity types.

Hierarchy (view full)

Constructors

Properties

_customFields: Record<string, any>

A mapper representing custom fields in an entity. Custom fields are represented by their field names and the corresponding values. A custom field can be added or updated using setCustomField method.

_entityApi: any
_oDataVersion: "v4"
_versionIdentifier: string

The current ETag version of the entity in the remote system. The ETag identified the version of the in the remote system. It will be automatically set in the "if-match" header of update requests and can be set as a custom header for delete requests. When no ETag is provided by the remote system the value of this variable defaults to "*".

remoteState: {
    [keys: string]: any;
}

The remote state of the entity. Remote state refers to the last known state of the entity on the remote system from which it has been retrieved or to which it has been posted. It is stored as map, where the keys are stored in the format of the original OData properties.

Type declaration

  • [keys: string]: any
_defaultBasePath: string
_entityName: string
_serviceName: string

Accessors

  • get versionIdentifier(): string
  • ETag version identifier accessor.

    Returns string

    The ETag version identifier of the retrieved entity, returns undefined if not retrieved.

Methods

  • Creates an object containing all defined properties, navigation properties and custom fields in the entity.

    Parameters

    • Optional visitedEntities: EntityBase[]

      List of entities to check in case of circular dependencies.

    Returns Record<string, any>

    EntityBase as an object with all defined entity fields.

  • Parameters

    Returns any

  • Custom field value getter.

    Parameters

    • fieldName: string

      The name of the custom field.

    Returns any

    The value of the corresponding custom field.

  • Returns a map that contains all entity custom fields.

    Returns Record<string, any>

    A map of all defined custom fields in the entity.

  • Returns all updated custom field properties compared to the last known remote state.

    Returns Record<string, any>

    An object containing all updated custom properties, with their new values.

  • Returns all changed properties compared to the last known remote state. The returned properties do not include custom fields. Use getUpdatedCustomFields, if you need custom fields.

    Returns Record<string, any>

    EntityBase with all properties that changed.

  • Returns all changed property names compared to the last known remote state. The returned properties names do not include custom fields. Use getUpdatedCustomFields, if you need custom fields.

    Returns string[]

    EntityBase with all properties that changed.

  • Validates whether a custom field exists in the entity.

    Parameters

    • fieldName: string

      The name of the custom field to update.

    Returns boolean

    A boolean value, that indicates whether a custom field is defined in entity.

  • Validates whether a field name does not conflict with an original field name and thus can be defined as custom fields.

    Parameters

    • customFieldName: string

      Field name to check.

    Returns boolean

    Boolean value that describes whether a field name can be defined as custom field.

  • Sets a new custom field in the entity or updates it. Throws an error, if the provided custom field name is already defined by an original field in entity.

    Parameters

    • fieldName: string

      The name of the custom field to update.

    • value: any

      The value of the field.

    Returns this

    The entity itself, to facilitate method chaining.

  • Sets custom fields on an entity.

    Parameters

    • customFields: Record<string, any>

      Custom fields to set on the entity.

    Returns this

    The entity itself, to facilitate method chaining.

  • Initializes or sets the remoteState of the entity. This function is called on all read, create and update requests.

    Parameters

    • Optional state: Record<string, any>

      State to be set as remote state.

    Returns this

    The entity itself, to facilitate method chaining.

  • Set the ETag version identifier of the retrieved entity.

    Parameters

    • etag: undefined | string

      The returned ETag version of the entity.

    Returns this

    The entity itself, to facilitate method chaining.

  • Overwrites the default toJSON method so that all instance variables as well as all custom fields of the entity are returned.

    Returns {
        [key: string]: any;
    }

    An object containing all instance variables + custom fields.

    Copyright Ⓒ 2024 SAP SE or an SAP affiliate company. All rights reserved.

    • [key: string]: any