{"repo":"foldright/auto-pipeline","free":true,"listed":false,"github":"https://github.com/foldright/auto-pipeline","clone":"git clone https://github.com/foldright/auto-pipeline.git","description":"🚀 auto-pipeline is a source code generator that auto generate the component's pipeline.","language":"Kotlin","stars":146,"topics":["auto-pipeline","auto","annotation-processor","java","codegen","code-generator","codegenerator","chain-of-responsibility","pipeline"],"license":"Apache-2.0","category":"dev-tools","readme_excerpt":"English 中文 Overview auto-pipeline is a source code generator that automatically generates pipeline components for your interfaces. It helps keep your project smaller, simpler, and more extensible by leveraging the Chain of Responsibility pattern. 💡 auto-pipeline is implemented as an annotation-processor , inspired by Google's Auto . ❤️ Features - 🚀 Zero Runtime Dependencies - Only needed at compile time - 🎯 Simple to Use - Just add one annotation to your interface - 🔌 Highly Extensible - Based on Chain of Responsibility pattern - 🛠 Type Safe - Generates type-safe Java code - 📦 Lightweight - No reflection, no runtime overhead Quick Start Prerequisites - Java 8 or above - Maven or Gradle build system 1. Add Dependencies for maven project: for gradle project: auto-pipeline has published to maven central, click here to find the latest version. 2. Annotate Your Interface Let's look at a simple example using a ConfigSource interface: given an interface named ConfigSource , the ConfigSource has the get() method, input a string as key and output a string as the value. like this: say, we want ConfigSource#get() has some extensibility, so we decide to apply the chain of responsibility pattern to it for extensibility. Now it's auto-pipeline 's turn to play a role, we simply add @AutoPipelin to ConfigSource ： auto-pipeline-processor will auto generate pipeline java files for ConfigSource into subpackage pipeline when compiled: - ConfigSourceHandler the responsibility interface we w","default_branch":null,"files":null,"tree":[],"storefront":"/r/foldright","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/foldright/auto-pipeline/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}