Module: Cocina::Models::Validatable
- Extended by:
- ActiveSupport::Concern
- Included in:
- AdminPolicy, AdminPolicyWithMetadata, Collection, CollectionWithMetadata, DRO, DROWithMetadata, Description, RequestAdminPolicy, RequestCollection, RequestDRO, RequestDescription
- Defined in:
- lib/cocina/models/validatable.rb
Overview
Validate upon construction
Instance Method Summary collapse
Instance Method Details
#new(*args) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/cocina/models/validatable.rb', line 32 def new(*args) validate = args.first.delete(:validate) if args.present? Thread.current[:cocina_construction_depth] = Thread.current[:cocina_construction_depth].to_i + 1 begin new_model = super ensure Thread.current[:cocina_construction_depth] -= 1 end Validators::Validator.validate(new_model.class, new_model) if validate || validate.nil? new_model end |