get_interface_details

in src/zadf/zcl_adf_service.clas.abap [0:0]


  METHOD get_interface_details.

    DATA : ls_config      TYPE zadf_config,
           lv_host        TYPE rfcdisplay-rfchost,
           lv_host_s      TYPE string,
           lv_path_prefix TYPE string.

    SELECT SINGLE * FROM zadf_config
           INTO ls_config
           WHERE interface_id = gv_interface_id.
    IF sy-subrc <> 0.
      RAISE EXCEPTION TYPE zcx_adf_service
        EXPORTING
          textid       = zcx_adf_service=>interface_not_available
          interface_id = gv_interface_id.
    ENDIF.

    SELECT SINGLE destination FROM zrest_config INTO gv_rfc_destination
         WHERE interface_id = gv_interface_id.
    IF sy-subrc <> 0.
      RAISE EXCEPTION TYPE zcx_adf_service
        EXPORTING
          textid       = zcx_adf_service=>interface_not_available
          interface_id = gv_interface_id.
    ENDIF.

**Getting Target host of RFC destination
    get_target_host( EXPORTING iv_destination = gv_rfc_destination IMPORTING  ev_server = lv_host
                                                                    ev_path_prefix = lv_path_prefix ).
    gv_host = lv_host.
    gv_path_prefix = lv_path_prefix.
    lv_host_s = lv_host.
    CONCATENATE lv_host_s lv_path_prefix INTO gv_uri.
    IF gv_uri IS INITIAL.
      RAISE EXCEPTION TYPE zcx_adf_service
        EXPORTING
          textid       = zcx_adf_service=>uri_not_maintained
          interface_id = gv_interface_id.
    ENDIF.
    IF ls_config-service_type IS INITIAL.
      RAISE EXCEPTION TYPE zcx_adf_service
        EXPORTING
          textid       = zcx_adf_service=>call_type_not_maintained
          interface_id = gv_interface_id.
    ELSEIF ls_config-service_type EQ gc_synchronous.
      gv_asynchronous = abap_false.
    ELSEIF ls_config-service_type EQ gc_asynchronous.
      gv_asynchronous = abap_true.
    ENDIF.
    gv_is_try = ls_config-is_try.
    gv_sas_key = ls_config-sas_key. "Added by KRDASH