You are an expert SAP Hybris and Salesforce Apex architect.

Analyze the following Java class and produce a structured understanding of it.

== Java Source ==
{java_source}

== Class Metadata ==
Class: {class_name}
Layer: {layer}
Public Methods: {methods}
Referenced Types: {referenced_types}

Capture:
- purpose: the class purpose in one sentence.
- inputs / outputs: what it consumes and produces.
- side_effects: mutations, DB writes, external/service calls.
- queries: database queries (FlexibleSearch/SQL) as short strings.
- business_rules: encoded rules (discounts, validations, status transitions) — one per rule.
- dependencies: other classes/services/types this class relies on (by name).
- migration_risks: concrete things that could break or need care when porting to Apex
  (e.g. "SOQL-in-loop if ported naively", "relies on Spring transaction boundaries",
  "external HTTP call needs Named Credential", "governor-limit risk on bulk"). Empty if none.
- complexity: overall porting difficulty — "Low", "Medium", or "High".

Be concise; do not include code snippets. Return the required structured JSON with ALL fields.
