All files / src/repo zcl_abapgit_repo_factory.clas.abap

68.51% Statements 37/54
83.33% Branches 5/6
50% Functions 1/2
68.51% Lines 37/54

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 551x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x             1x 1x 2x 2x 2x 2x                 1x 1x 5x 5x 5x 5x        
CLASS zcl_abapgit_repo_factory DEFINITION
  PUBLIC
  FINAL
  CREATE PRIVATE
  GLOBAL FRIENDS zcl_abapgit_repo_injector .
 
  PUBLIC SECTION.
    CLASS-METHODS get_repo_pull
      IMPORTING
        !ii_repo            TYPE REF TO zif_abapgit_repo
      RETURNING
        VALUE(ri_repo_pull) TYPE REF TO zif_abapgit_repo_pull.
    CLASS-METHODS get_repo_push
      IMPORTING
        !ii_repo_online     TYPE REF TO zif_abapgit_repo_online
      RETURNING
        VALUE(ri_repo_push) TYPE REF TO zif_abapgit_repo_push.
  PROTECTED SECTION.
  PRIVATE SECTION.
    CLASS-DATA gi_repo_pull TYPE REF TO zif_abapgit_repo_pull.
    CLASS-DATA gi_repo_push TYPE REF TO zif_abapgit_repo_push.
ENDCLASS.
 
 
 
CLASS zcl_abapgit_repo_factory IMPLEMENTATION.

  METHOD get_repo_pull.

    " bound to one repository, so a new instance unless a test double is injected
    IF gi_repo_pull IS BOUND.
      ri_repo_pull = gi_repo_pull.
    ELSE.
      CREATE OBJECT ri_repo_pull TYPE zcl_abapgit_repo_pull
        EXPORTING
          ii_repo = ii_repo.
    ENDIF.

  ENDMETHOD.


  METHOD get_repo_push.

    " bound to one repository, so a new instance unless a test double is injected
    IF gi_repo_push IS BOUND.
      ri_repo_push = gi_repo_push.
    ELSE.
      CREATE OBJECT ri_repo_push TYPE zcl_abapgit_repo_push
        EXPORTING
          ii_repo_online = ii_repo_online.
    ENDIF.

  ENDMETHOD.
ENDCLASS.