Class: ProductTaxonomy::Serializers::Disclosure::Dist::JsonSerializer
- Inherits:
-
Object
- Object
- ProductTaxonomy::Serializers::Disclosure::Dist::JsonSerializer
- Defined in:
- lib/product_taxonomy/models/serializers/disclosure/dist/json_serializer.rb
Class Method Summary collapse
-
.serialize(disclosure, locale: "en") ⇒ Hash
Disclosures form a shallow hierarchy.
-
.serialize_all(version:, locale: "en") ⇒ Hash
A hash containing the serialized disclosure data.
Class Method Details
.serialize(disclosure, locale: "en") ⇒ Hash
Disclosures form a shallow hierarchy. Records are serialized as a
flat list; hierarchy is expressed via parent_public_id (matching
how categories express hierarchy via parent_id). Grouping/root
nodes carry nil for leaf-only fields.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/product_taxonomy/models/serializers/disclosure/dist/json_serializer.rb', line 27 def serialize(disclosure, locale: "en") { "id" => disclosure.gid, "public_id" => disclosure.public_id, "parent_public_id" => disclosure.parent_public_id, "name" => disclosure.name(locale:), "internal_label" => disclosure.internal_label, "description" => disclosure.description(locale:), "jurisdictions" => disclosure.jurisdictions, "legal_citation" => disclosure.legal_citation, "title" => disclosure.title(locale:), "content" => disclosure.content(locale:), "source" => disclosure.source, "symbol" => disclosure.symbol, "display_requirements" => disclosure.display_requirements, "display_preferences" => disclosure.display_preferences, "disclosure_attributes" => disclosure.disclosure_attributes, "disclosure_attribute_values" => disclosure.disclosure_attribute_values, } end |
.serialize_all(version:, locale: "en") ⇒ Hash
Returns A hash containing the serialized disclosure data.
12 13 14 15 16 17 |
# File 'lib/product_taxonomy/models/serializers/disclosure/dist/json_serializer.rb', line 12 def serialize_all(version:, locale: "en") { "version" => version, "disclosures" => ProductTaxonomy::Disclosure.all.map { serialize(_1, locale:) }, } end |