class Audrey::Node
¶ ↑
Audrey::Node This class defines an object that connects to the database for a single object record.
Attributes
db[R]
pk[R]
Public Class Methods
new(p_db, opts={})
click to toggle source
# File lib/audrey.rb, line 686 def initialize(p_db, opts={}) # param check if not p_db.is_a?(Audrey) raise 'db-param-not-audrey: ' + p_db.class.to_s end # db and engine @db = p_db @engine = @db.engine # hold on to flcass if one was sent @aclass = opts['aclass'] # if a row was sent, cache it and set pk if opts['row'] @row_cache = opts['row'] @pk = @row_cache['pk'] else @pk = opts['pk'] || Audrey::Util.uuid @row_cache = nil end end
Public Instance Methods
alive?()
click to toggle source
# File lib/audrey.rb, line 766 def alive? # $tm.hrm return @engine.object_exists?(@pk) end
ancestors() { |object_from_row| ... }
click to toggle source
# File lib/audrey.rb, line 751 def ancestors read_check() @engine.ancestors(@pk) do |row| yield @db.object_from_row(row) end end
delete_object()
click to toggle source
# File lib/audrey.rb, line 778 def delete_object write_check() return @engine.delete_object(@pk) end
fco()
click to toggle source
# File lib/audrey.rb, line 734 def fco # $tm.hrm return Audrey::Util.aclass_fco(row['aclass']) end
isolate()
click to toggle source
# File lib/audrey.rb, line 739 def isolate # $tm.hrm return Audrey::Util.aclass_isolate(row['aclass']) end
row()
click to toggle source
# File lib/audrey.rb, line 716 def row() # $tm.hrm read_check() if not @row_cache @row_cache = @engine.row_by_pk(@pk) end return @row_cache end