login as:
~/abapcraft.dev — code, crafted in SAP
florin@s4hana:~/abap/posts/gilded-rose/src/ycl_common_item.clas.abap $ cat ycl_common_item.clas.abap
gilded-rose / src / ycl_common_item.clas.abap
ABAP 35 lines
CLASS ycl_common_item DEFINITION
  PUBLIC
  INHERITING FROM ycl_item_root
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.
    METHODS: update REDEFINITION.
    METHODS constructor
      IMPORTING
        i_item TYPE REF TO ycl_item.
  PRIVATE SECTION.

ENDCLASS.

CLASS ycl_common_item IMPLEMENTATION.

  METHOD constructor.
    super->constructor( ).
    me->mo_item = i_item.
  ENDMETHOD.
  METHOD update.
    decrease_quality( ).

    decrease_sell_in( ).

    IF is_sellin_under( 0 ).
      decrease_quality( ).
    ENDIF.
  ENDMETHOD.



ENDCLASS.