Add OfficeFloor to REST Frameworks#1281
Open
sagenschneider wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This adds OfficeFloor under REST Frameworks.
Disclosure: I'm the author of OfficeFloor, so this is a self-submission. I've tried to justify it against the contribution criteria below rather than on my own opinion of the project.
What it is: a Spring Boot add-on that makes each REST endpoint's function orchestration explicit. An endpoint's steps, conditional branches and error flows are declared in a single YAML file, and the file's directory path mirrors the URL (officefloor/rest/greeting/{name}.GET.yml maps to GET /greeting/{name}).
Why it qualifies? Criterion (c), a unique approach: OfficeFloor is built on a distinct paradigm, Inversion of Coupling Control, which separates three concerns most frameworks conflate: Continuation Injection (orchestrating functions), Thread Injection (assigning threads to functions), and Dependency Injection (injecting state). The approach is documented in a peer-reviewed paper and an introductory article:
What distinguishes it from other entries in the section: the other REST Frameworks listed handle routing and binding through annotations or code, where an endpoint's flow is implicit in the call stack. OfficeFloor's differentiator is that the orchestration is explicit and external. One readable YAML file per endpoint, with the directory layout acting as a direct index from URL to the code involved. I'm not aware of another entry in the section that takes this approach.
Why the pattern is timely: this explicit structure has also become more practically relevant with AI-assisted development. Because routes are enumerable by listing a directory and each endpoint's flow and classes are named in one file, tools can navigate from a URL straight to the relevant code without parsing scattered annotations. I mention this only as context; the novelty above stands on its own.
Compliance:
Summary by cubic
Add OfficeFloor to the REST Frameworks list in README. It’s a Spring Boot add-on that makes each endpoint’s flow explicit in one YAML file whose directory path maps to the URL.
Written for commit 6b01ff4. Summary will update on new commits.