Skip to content

Commit

Permalink
cache parsed schema after downloading from github
Browse files Browse the repository at this point in the history
  • Loading branch information
Darren Hardy committed Aug 4, 2016
1 parent 94e3291 commit c03c826
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions lib/geo_combine/geoblacklight.rb
Expand Up @@ -15,6 +15,7 @@ class Geoblacklight
# @param [Hash] fields enhancements to metadata that are merged with @metadata
def initialize(metadata, fields = {})
@metadata = JSON.parse(metadata).merge(fields)
@schema = nil
end

##
Expand All @@ -41,10 +42,10 @@ def to_json
# Validates a GeoBlacklight-Schema json document
# @return [Boolean]
def valid?
schema = JSON.parse(open('https://raw.githubusercontent.com/geoblacklight/geoblacklight/master/schema/geoblacklight-schema.json').read)
@schema ||= JSON.parse(open('https://raw.githubusercontent.com/geoblacklight/geoblacklight/master/schema/geoblacklight-schema.json').read)
data = to_json
data = [data] unless data.is_a? Array
JSON::Validator.validate!(schema, data, validate_schema: true)
JSON::Validator.validate!(@schema, data, validate_schema: true)
end

private
Expand Down

0 comments on commit c03c826

Please sign in to comment.