mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 20:32:26 +08:00
51 lines
1.9 KiB
Markdown
51 lines
1.9 KiB
Markdown
---
|
|
title: Serializers
|
|
order: 220
|
|
---
|
|
|
|
All object serializers must be named ZCL_ABAPGIT_OBJECT_`type`, where `type` is the corresponding TADIR-OBJECT type
|
|
|
|
Use SAP Standard APIs for retriving and updating object information where possible.
|
|
If not possible try using ZCL_ABAPGIT_OBJECTS_GENERIC
|
|
|
|
As code is stored in git, no usernames, timestamps, states (e.g. active/inactive) or other system specific information should be part of the serialized object files.
|
|
|
|
Serializers must implement interface ZIF_ABAPGIT_OBJECT:
|
|
|
|
``ZIF_ABAPGIT_OBJECT~SERIALIZE``
|
|
Contains of all process steps to read all relevant object type specific information and serialize it (as one or many files)
|
|
|
|
``ZIF_ABAPGIT_OBJECT~DESERIALIZE``
|
|
Contains of all process steps to create or update an object based on one or many files
|
|
|
|
``ZIF_ABAPGIT_OBJECT~DELETE``
|
|
Contains of all process steps to delete an object based on one or many files
|
|
|
|
``ZIF_ABAPGIT_OBJECT~EXISTS``
|
|
Returns whether a given object already exists
|
|
|
|
``ZIF_ABAPGIT_OBJECT~IS_LOCKED``
|
|
Returns whether a given object is currently locked
|
|
|
|
``ZIF_ABAPGIT_OBJECT~IS_ACTIVE``
|
|
Returns whether a given object exists in active state
|
|
|
|
``ZIF_ABAPGIT_OBJECT~CHANGED_BY``
|
|
Returns the user information of the last changer
|
|
|
|
``ZIF_ABAPGIT_OBJECT~JUMP``
|
|
Navigates to the corresponding object maintenance screen
|
|
|
|
``ZIF_ABAPGIT_OBJECT~GET_METADATA``
|
|
Returns object specific metadata
|
|
|
|
``ZIF_ABAPGIT_OBJECT~GET_COMPARATOR``
|
|
Triggered before deserialization to perform checks, eg warn the user that database tables are changed.
|
|
|
|
``ZIF_ABAPGIT_OBJECT~GET_DESERIALIZE_STEPS``
|
|
Defines the kind of Deserialzation Step (DDIC, ABAP, LATE), which is used to build the processing sequence of an import run
|
|
|
|
When adding new serializers, add tests to organization [abapGit-tests](https://github.com/abapGit-tests)
|
|
|
|
Deserialization sequence/prioritization is handled in `ZCL_ABAPGIT_OBJECTS->PRIORITIZE_DESER`
|