class ActiveFedora::LoadableFromJson::SolrBackedResource

def freeze

def freeze
  @hash.freeze
end

def get_values(k)

def get_values(k)
  @hash[k]
end

def initialize(model)

def initialize(model)
  @model = model
  @hash = {}
end

def insert(vals)

Parameters:
  • vals (Array) -- an array of 3 elements (subject, predicate, object) to insert
def insert(vals)
  _, pred, val = vals
  set_value(reflection(pred), [val])
end

def query(args={})

def query(args={})
  predicate = args[:predicate]
  reflection = reflection(predicate)
  FakeQuery.new(get_values(reflection))
end

def rdf_subject

def rdf_subject
  ::RDF::URI.new(nil)
end

def reflection(predicate)

def reflection(predicate)
  Array(@model.outgoing_reflections.find { |key, reflection| reflection.predicate == predicate }).first
end

def set_value(k, v)

resource, so cast everything back to an array.
It is expected that the singular filter gets applied after fetching the value from this
def set_value(k, v)
  @hash[k] = Array(v)
end

def to_s

def to_s
  @hash.to_s
end