Files
pi_mcps/java/mss-failsafe/.github/coding_guidelines.instructions.md
Patrick Plate 1a0a56a626 chore(java): consolidate mss-failsafe to single canonical copy
Replace the stale multi-module java/mss-failsafe skeleton (old user-management
prototype) with the active single-module machine-safety inspection app that was
living in its own standalone repo at the repo root.

- Remove old java/mss-failsafe/ multi-module tree (mss, userdata, userManagement,
  mssfailsafe.datalayer, mssfailsafeWeblayer) incl. committed build artifacts
- Add the active app (PrimeFaces 11 / JSF 2.3 / Hibernate 5.6 / iText / POI)
  flattened into java/mss-failsafe/ as the only mss-failsafe in git
- Working tree captured = master tip 2a142b5 + in-progress uncommitted work
  (incl. .github/*.instructions.md AI-context files)
- Archive the standalone repo's 33-commit history in GIT_HISTORY_ARCHIVE.md
  since its .git was not migrated

This is the source of truth / base for the upcoming upgraded rewrite.
2026-06-13 19:55:28 +02:00

1.0 KiB
Executable File

Coding Guidelines Instructions

Naming

  • Manager: *Manager
  • Controller: *Controller
  • Entities: Singular Substantive
  • Negative IDs: temporäre Objekte

Style

  • 4 Spaces
  • Logger statt System.out
  • Deutsche UI-Texte, Englisch im Code

Error Handling

  • Log + Rückgabe (bestehend); für neue komplexe Logik optional BusinessException

Persistenz

  • Neue Entity: id == null vor persist
  • refresh(entity) nutzen um Lazy Collections zu initialisieren

Transaktionen

  • Schreibmethoden: @Transactional (oder rely auf EJB Container)

Performance

  • Sammeloperationen: saveAll(Collection)

UI

  • PrimeFaces Dialoge schließen mit closeDialogs
  • Negative IDs in Listen bis Sammelspeichern

PDF

  • Neue Funktionen nur mit iText7 API

Tests (Empfehlung)

  • CRUD Manager Tests
  • Klon & Fragebogen Zuordnung

Anti-Pattern

  • Logik nicht direkt im Controller wenn generell wiederverwendbar
  • Keine duplizierten Query Strings -> Named Queries

Aktualisiert: 2025-10-20