java.lang.Object
com.sap.cloud.sdk.datamodel.odata.helper.VdmObject<EntityT>
com.sap.cloud.sdk.datamodel.odata.helper.VdmEntity<ProductClass>
com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.productmasterdataincludingclassification.ProductClass

public class ProductClass extends VdmEntity<ProductClass>
Class Assignments

Original entity name from the Odata EDM: A_ProductClassType

  • Field Details

    • ALL_FIELDS

      public static final ProductClassSelectable ALL_FIELDS
      Selector for all available fields of ProductClass.
    • PRODUCT

      public static final ProductClassField<String> PRODUCT
      Use with available fluent helpers to apply the Product field to query operations.
    • CLASS_INTERNAL_ID

      public static final ProductClassField<String> CLASS_INTERNAL_ID
      Use with available fluent helpers to apply the ClassInternalID field to query operations.
    • KEY_DATE

      public static final ProductClassField<LocalDateTime> KEY_DATE
      Use with available fluent helpers to apply the KeyDate field to query operations.
    • CHANGE_NUMBER

      public static final ProductClassField<String> CHANGE_NUMBER
      Use with available fluent helpers to apply the ChangeNumber field to query operations.
    • CLASS_TYPE

      public static final ProductClassField<String> CLASS_TYPE
      Use with available fluent helpers to apply the ClassType field to query operations.
    • TO_CHARACTERISTICS

      public static final ProductClassLink<ProductClassCharc> TO_CHARACTERISTICS
      Use with available fluent helpers to apply the to_Characteristics navigation property to query operations.
    • TO_CLASS_DETAILS

      public static final ProductClassOneToOneLink<ClfnClassForKeyDate> TO_CLASS_DETAILS
      Use with available fluent helpers to apply the to_ClassDetails navigation property to query operations.
  • Constructor Details

  • Method Details

    • getType

      @Nonnull public Class<ProductClass> getType()
      Specified by:
      getType in class VdmObject<ProductClass>
    • setProduct

      public void setProduct(@Nullable String product)
      (Key Field) Constraints: Not nullable, Maximum length: 90

      Original property name from the Odata EDM: Product

      Parameters:
      product - Key of Object to be Classified
    • setClassInternalID

      public void setClassInternalID(@Nullable String classInternalID)
      (Key Field) Constraints: Not nullable, Maximum length: 10

      Original property name from the Odata EDM: ClassInternalID

      Parameters:
      classInternalID - Internal Class Number
    • setKeyDate

      public void setKeyDate(@Nullable LocalDateTime keyDate)
      Constraints: Not nullable, Precision: 0

      Original property name from the Odata EDM: KeyDate

      Parameters:
      keyDate - The keyDate to set.
    • setChangeNumber

      public void setChangeNumber(@Nullable String changeNumber)
      Constraints: Not nullable, Maximum length: 12

      Original property name from the Odata EDM: ChangeNumber

      Parameters:
      changeNumber - Change Number
    • setClassType

      public void setClassType(@Nullable String classType)
      Constraints: Not nullable, Maximum length: 3

      Original property name from the Odata EDM: ClassType

      Parameters:
      classType - Class Type
    • getEntityCollection

      protected String getEntityCollection()
      Specified by:
      getEntityCollection in class VdmEntity<ProductClass>
    • getKey

      @Nonnull protected Map<String,Object> getKey()
      Overrides:
      getKey in class VdmObject<ProductClass>
    • toMapOfFields

      @Nonnull protected Map<String,Object> toMapOfFields()
      Overrides:
      toMapOfFields in class VdmObject<ProductClass>
    • fromMap

      protected void fromMap(Map<String,Object> inputValues)
      Overrides:
      fromMap in class VdmObject<ProductClass>
    • field

      @Nonnull public static <T> ProductClassField<T> field(@Nonnull String fieldName, @Nonnull Class<T> fieldType)
      Use with available fluent helpers to apply an extension field to query operations.
      Type Parameters:
      T - The type of the extension field when performing value comparisons.
      Parameters:
      fieldName - The name of the extension field as returned by the OData service.
      fieldType - The Java type to use for the extension field when performing value comparisons.
      Returns:
      A representation of an extension field from this entity.
    • field

      @Nonnull public static <T, DomainT> ProductClassField<T> field(@Nonnull String fieldName, @Nonnull TypeConverter<T,DomainT> typeConverter)
      Use with available fluent helpers to apply an extension field to query operations.
      Type Parameters:
      T - The type of the extension field when performing value comparisons.
      DomainT - The type of the extension field as returned by the OData service.
      Parameters:
      typeConverter - A TypeConverter<T, DomainT> instance whose first generic type matches the Java type of the field
      fieldName - The name of the extension field as returned by the OData service.
      Returns:
      A representation of an extension field from this entity, holding a reference to the given TypeConverter.
    • getDestinationForFetch

      @Nullable public HttpDestinationProperties getDestinationForFetch()
      Overrides:
      getDestinationForFetch in class VdmEntity<ProductClass>
    • setServicePathForFetch

      protected void setServicePathForFetch(@Nullable String servicePathForFetch)
      Overrides:
      setServicePathForFetch in class VdmEntity<ProductClass>
    • attachToService

      public void attachToService(@Nullable String servicePath, @Nonnull HttpDestinationProperties destination)
      Overrides:
      attachToService in class VdmEntity<ProductClass>
    • getDefaultServicePath

      protected String getDefaultServicePath()
      Overrides:
      getDefaultServicePath in class VdmEntity<ProductClass>
    • toMapOfNavigationProperties

      @Nonnull protected Map<String,Object> toMapOfNavigationProperties()
      Overrides:
      toMapOfNavigationProperties in class VdmObject<ProductClass>
    • fetchCharacteristics

      @Nonnull public List<ProductClassCharc> fetchCharacteristics()
      Fetches the ProductClassCharc entities (one to many) associated with this entity. This corresponds to the OData navigation property to_Characteristics.

      Please note: This method will not cache or persist the query results.

      Returns:
      List containing one or more associated ProductClassCharc entities. If no entities are associated then an empty list is returned.
      Throws:
      com.sap.cloud.sdk.datamodel.odata.client.exception.ODataException - If the entity is unmanaged, i.e. it has not been retrieved using the OData VDM's services and therefore has no ERP configuration context assigned. An entity is managed if it has been either retrieved using the VDM's services or returned from the VDM's services as the result of a CREATE or UPDATE call.
    • getCharacteristicsOrFetch

      @Nonnull public List<ProductClassCharc> getCharacteristicsOrFetch()
      Retrieval of associated ProductClassCharc entities (one to many). This corresponds to the OData navigation property to_Characteristics.

      If the navigation property to_Characteristics of a queried ProductClass is operated lazily, an ODataException can be thrown in case of an OData query error.

      Please note: Lazy loading of OData entity associations is the process of asynchronous retrieval and persisting of items from a navigation property. If a lazy property is requested by the application for the first time and it has not yet been loaded, an OData query will be run in order to load the missing information and its result will get cached for future invocations.

      Returns:
      List of associated ProductClassCharc entities.
      Throws:
      com.sap.cloud.sdk.datamodel.odata.client.exception.ODataException - If the entity is unmanaged, i.e. it has not been retrieved using the OData VDM's services and therefore has no ERP configuration context assigned. An entity is managed if it has been either retrieved using the VDM's services or returned from the VDM's services as the result of a CREATE or UPDATE call.
    • getCharacteristicsIfPresent

      @Nonnull public io.vavr.control.Option<List<ProductClassCharc>> getCharacteristicsIfPresent()
      Retrieval of associated ProductClassCharc entities (one to many). This corresponds to the OData navigation property to_Characteristics.

      If the navigation property for an entity ProductClass has not been resolved yet, this method will not query further information. Instead its Option result state will be empty.

      Returns:
      If the information for navigation property to_Characteristics is already loaded, the result will contain the ProductClassCharc entities. If not, an Option with result state empty is returned.
    • setCharacteristics

      public void setCharacteristics(@Nonnull List<ProductClassCharc> value)
      Overwrites the list of associated ProductClassCharc entities for the loaded navigation property to_Characteristics.

      If the navigation property to_Characteristics of a queried ProductClass is operated lazily, an ODataException can be thrown in case of an OData query error.

      Please note: Lazy loading of OData entity associations is the process of asynchronous retrieval and persisting of items from a navigation property. If a lazy property is requested by the application for the first time and it has not yet been loaded, an OData query will be run in order to load the missing information and its result will get cached for future invocations.

      Parameters:
      value - List of ProductClassCharc entities.
    • addCharacteristics

      public void addCharacteristics(ProductClassCharc... entity)
      Adds elements to the list of associated ProductClassCharc entities. This corresponds to the OData navigation property to_Characteristics.

      If the navigation property to_Characteristics of a queried ProductClass is operated lazily, an ODataException can be thrown in case of an OData query error.

      Please note: Lazy loading of OData entity associations is the process of asynchronous retrieval and persisting of items from a navigation property. If a lazy property is requested by the application for the first time and it has not yet been loaded, an OData query will be run in order to load the missing information and its result will get cached for future invocations.

      Parameters:
      entity - Array of ProductClassCharc entities.
    • fetchClassDetails

      @Nullable public ClfnClassForKeyDate fetchClassDetails()
      Fetches the ClfnClassForKeyDate entity (one to one) associated with this entity. This corresponds to the OData navigation property to_ClassDetails.

      Please note: This method will not cache or persist the query results.

      Returns:
      The single associated ClfnClassForKeyDate entity, or null if an entity is not associated.
      Throws:
      com.sap.cloud.sdk.datamodel.odata.client.exception.ODataException - If the entity is unmanaged, i.e. it has not been retrieved using the OData VDM's services and therefore has no ERP configuration context assigned. An entity is managed if it has been either retrieved using the VDM's services or returned from the VDM's services as the result of a CREATE or UPDATE call.
    • getClassDetailsOrFetch

      @Nullable public ClfnClassForKeyDate getClassDetailsOrFetch()
      Retrieval of associated ClfnClassForKeyDate entity (one to one). This corresponds to the OData navigation property to_ClassDetails.

      If the navigation property to_ClassDetails of a queried ProductClass is operated lazily, an ODataException can be thrown in case of an OData query error.

      Please note: Lazy loading of OData entity associations is the process of asynchronous retrieval and persisting of items from a navigation property. If a lazy property is requested by the application for the first time and it has not yet been loaded, an OData query will be run in order to load the missing information and its result will get cached for future invocations.

      Returns:
      List of associated ClfnClassForKeyDate entity.
      Throws:
      com.sap.cloud.sdk.datamodel.odata.client.exception.ODataException - If the entity is unmanaged, i.e. it has not been retrieved using the OData VDM's services and therefore has no ERP configuration context assigned. An entity is managed if it has been either retrieved using the VDM's services or returned from the VDM's services as the result of a CREATE or UPDATE call.
    • getClassDetailsIfPresent

      @Nonnull public io.vavr.control.Option<ClfnClassForKeyDate> getClassDetailsIfPresent()
      Retrieval of associated ClfnClassForKeyDate entity (one to one). This corresponds to the OData navigation property to_ClassDetails.

      If the navigation property for an entity ProductClass has not been resolved yet, this method will not query further information. Instead its Option result state will be empty.

      Returns:
      If the information for navigation property to_ClassDetails is already loaded, the result will contain the ClfnClassForKeyDate entity. If not, an Option with result state empty is returned.
    • setClassDetails

      public void setClassDetails(ClfnClassForKeyDate value)
      Overwrites the associated ClfnClassForKeyDate entity for the loaded navigation property to_ClassDetails.
      Parameters:
      value - New ClfnClassForKeyDate entity.
    • builder

      @Nonnull public static ProductClass.ProductClassBuilder builder()
    • getProduct

      @Nullable public String getProduct()
      (Key Field) Constraints: Not nullable, Maximum length: 90

      Original property name from the Odata EDM: Product

      Returns:
      Key of Object to be Classified
    • getClassInternalID

      @Nullable public String getClassInternalID()
      (Key Field) Constraints: Not nullable, Maximum length: 10

      Original property name from the Odata EDM: ClassInternalID

      Returns:
      Internal Class Number
    • getKeyDate

      @Nullable public LocalDateTime getKeyDate()
      Constraints: Not nullable, Precision: 0

      Original property name from the Odata EDM: KeyDate

      Returns:
      The keyDate contained in this entity.
    • getChangeNumber

      @Nullable public String getChangeNumber()
      Constraints: Not nullable, Maximum length: 12

      Original property name from the Odata EDM: ChangeNumber

      Returns:
      Change Number
    • getClassType

      @Nullable public String getClassType()
      Constraints: Not nullable, Maximum length: 3

      Original property name from the Odata EDM: ClassType

      Returns:
      Class Type
    • toString

      @Nonnull public String toString()
      Overrides:
      toString in class VdmObject<ProductClass>
    • equals

      public boolean equals(@Nullable Object o)
      Overrides:
      equals in class VdmEntity<ProductClass>
    • canEqual

      protected boolean canEqual(@Nullable Object other)
      Overrides:
      canEqual in class VdmEntity<ProductClass>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class VdmEntity<ProductClass>