abapGit/docs/ref-exits.md
Domi Bigl 15dcf41984
add user exit for commit display URL (#4073)
* add user exit for commit display URL

  METHODS adjust_display_commit_url
    IMPORTING iv_repo_url    TYPE zif_abapgit_persistence=>ty_repo-url
              iv_commit_hash TYPE zif_abapgit_definitions=>ty_sha1
    CHANGING  cv_display_url TYPE zif_abapgit_persistence=>ty_repo-url

* adjust UT

* provide also repo name and key in the exit

* Update ref-exits.md

* Update ref-exits.md

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-28 07:00:37 +01:00

2.8 KiB

title category order
User Exits reference 40

abapGit contains predefined user exits which can be used to modify the standard behavior.

If the compiled report is installed, create include ZABAPGIT_USER_EXIT and add local class ZCL_ABAPGIT_USER_EXIT implementing ZIF_ABAPGIT_EXIT.

If the development version is installed create global class ZCL_ABAPGIT_USER_EXIT implementing ZIF_ABAPGIT_EXIT.

In both cases add the object in a package different from the main abapGit code.

The list of user exits can change at any time, make sure to syntax check user exits after upgrade of abapGit.

CHANGE_LOCAL_HOST

If the hostnames are not properly configured, this exit can be used to modify the settings. This is especially useful when running abapGitServer on the local system.

ALLOW_SAP_OBJECTS

Force allowing serialization of SAP objects.

CHANGE_PROXY_URL

todo

CHANGE_PROXY_PORT

todo

CHANGE_PROXY_AUTHENTICATION

todo

CREATE_HTTP_CLIENT

Store username and password in RFC connection setup, see https://github.com/abapGit/abapGit/issues/1841

HTTP_CLIENT

Can be used for setting logon tickets eg. in connection with abapGitServer connections between SAP systems. https://gist.github.com/larshp/71609852a79aa1e877f8c4020d18feac

CHANGE_TADIR

Can be used to skip certain objects, or force a different object setup than currently in TADIR.

GET_SSL_ID

Possibility to change the default ANONYM ssl id to something system specific

CUSTOM_SERIALIZE_ABAP_CLIF

Allows for a custom serializer to be used for global classes' CLIF sources. See #2321 and #2491 for use cases. This example implementation forces the old class serializer to be used for specific packages.

DESERIALIZE_POSTPROCESS

Can be used for any postprocessing operation for deserialized objects. Since it is a postprocessing step, only logs can be added to II_LOG and one should not terminate the process by raising exception, which may lead to inconsistencies.

ADJUST_DISPLAY_COMMIT_URL

Can be used to set the URL to display a commit. There is a default implementation for some provider:

  Repo URL Show Commit URL
github http(s)://github.com/<user>/<repo>.git http(s): //github.com/<user>/<repo>/commit/17b6411cdb59cfb4478a8e6b3de1da3241fedd41
bitbucket http(s)://bitbucket.org/<user>/<repo>.git http(s)://bitbucket.org/<user>/<repo>/commits/17b6411cdb59cfb4478a8e6b3de1da3241fedd41
gitlab http(s)://gitlab.com/<user>/<repo>.git http(s)://gitlab.com/<user>/<repo>/-/commit/17b6411cdb59cfb4478a8e6b3de1da3241fedd41