class Dato::JsonSchemaType
Attributes
schema[R]
Public Class Methods
new(schema)
click to toggle source
# File lib/dato/json_schema_type.rb, line 7 def initialize(schema) @schema = schema end
Public Instance Methods
call()
click to toggle source
# File lib/dato/json_schema_type.rb, line 11 def call type_property = find_info_for_type_property return nil unless type_property type_property.pattern.to_s.gsub(/(^(\(\?-mix:\^)|(\$\))$)/, "") end
Private Instance Methods
find_entity_in_data()
click to toggle source
# File lib/dato/json_schema_type.rb, line 29 def find_entity_in_data return nil if !schema || !schema.properties["data"] if schema.properties["data"].type.first == "array" return schema.properties["data"].items if schema.properties["data"].items return nil end return schema.properties["data"] if schema.properties["data"].type.first == "object" if schema.properties["data"].any_of return schema.properties["data"].any_of.reject { |x| x.definitions.type.example == "job" } end nil end
find_info_for_type_property()
click to toggle source
# File lib/dato/json_schema_type.rb, line 21 def find_info_for_type_property entity = find_entity_in_data return nil unless entity entity.properties["type"] end