{"ref":"artifact:furkancosgun-abap-cache-box","page":"/artifacts/furkancosgun-abap-cache-box","json":"/artifacts/furkancosgun-abap-cache-box.json","generated":"2026-10-29","drafted_with_ai":true,"entity":{"id":"furkancosgun-abap-cache-box","name":"ABAP-CACHE-BOX","artifact_type":"generator","ecosystem":"abap","domain":"data-and-persistence","origin_ring":"independent","description":{"one_line":"Macros that generate a singleton ABAP cache class for a data type or object reference, backed by a hashed internal table and exposing put, get, delete, clear and size.","short":"Generates singleton ABAP cache classes from a macro call","what_it_solves":"Writing a cache class for every data type by hand duplicates the same singleton and lookup logic each time; generate_data_cache_box and generate_oref_cache_box generate that class instead, named after the class supplied to the macro and backed by a hashed internal table. The generated class exposes put, get, delete, clear and size, and get_instance returns its one shared instance. It stops at the generated class: the macros produce storage and lookup, nothing about expiry or persistence."},"links":{"repo":"https://github.com/furkancosgun/ABAP-CACHE-BOX"},"type_properties":{"distribution":{"value":["copy"],"sources":[{"url":"https://github.com/furkancosgun/ABAP-CACHE-BOX","title":"ABAP-CACHE-BOX — README","checked":"2026-10-18","quote":"Copy the cache class macros and definitions into your ABAP development environment."}]},"generates":{"value":["code"],"sources":[{"url":"https://github.com/furkancosgun/ABAP-CACHE-BOX","title":"ABAP-CACHE-BOX — README","checked":"2026-10-18","quote":"Dynamic Cache Generation: Use macros to generate cache classes for different data types without duplicating code."}]}},"identity":{"license":"MIT"},"source_available":true,"provides":[{"capability":"capability:caching","what_it_does":"Generates a singleton ABAP cache class, with put, get, delete, clear and size, for a given data type or object reference.","sources":[{"url":"https://github.com/furkancosgun/ABAP-CACHE-BOX","title":"furkancosgun/ABAP-CACHE-BOX — README","checked":"2026-09-14","quote":"This repository provides a flexible and reusable ABAP cache implementation using macros."}]}],"maintainers":["actor:furkancosgun"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:dotabap"}],"first_seen":"2026-09-14"},"contributors":["actor:furkancosgun"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"one contributor, personally owned"},{"label":"Repository","tier":"poor","evidence":"pushed 2024-08, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"not read on ABAP: its lines run side by side"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"poor","evidence":"none found in the tree"},{"label":"Docs","tier":"good","evidence":"README 5 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":0,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-29","npm":"not published under this name","stars":0,"forks":1,"open_issues":0,"archived":false,"pushed_at":"2024-08-20","license_spdx":"MIT","org_owned":false,"default_branch":"main","contributors":1,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":5489,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"readme_path":"README.md","readme_sha":"f756749253fe7c02687371ae661fc00a73b2efe6","created_at":"2024-08-11T08:30:32Z","open_prs":0,"first_commit":"2024-08-11","last_commit":"2024-08-20","commits":7,"repo_read":"2026-10-29"},"edges":{"maintainers":[{"ref":"actor:furkancosgun","name":"Furkan COSGUN","json":"/actors/furkancosgun.json"}],"contributors":[{"ref":"actor:furkancosgun","name":"Furkan COSGUN","json":"/actors/furkancosgun.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}