Sha256: 92952a36a9de0038aeb3107e20090d3a2cc43640b376ca354f878f4ca5edebf5

Contents?: true

Size: 1.34 KB

Versions: 16

Compression:

Stored size: 1.34 KB

Contents

module Document
  
  # Store wrapper methods for document
  def get_data(doctype,type=Hash)
    Store.get_data(docname(doctype),type)
  end
  
  def get_value(doctype)
    Store.get_value(docname(doctype))
  end
  
  def put_data(doctype,data,append=false)
    Store.put_data(docname(doctype),data,append)
  end
  
  def put_value(doctype,data)
    Store.put_value(docname(doctype),data)
  end
  
  def delete_data(doctype,data)
    Store.delete_data(docname(doctype),data)
  end
  
  def update_objects(doctype,updates)
    Store.update_objects(docname(doctype),updates)
  end
  
  def remove_objects(doctype,deletes)
    Store.delete_objects(docname(doctype),deletes)
  end
  
  def flash_data(doctype)
    Store.flash_data(docname(doctype))
  end
  
  def flash_source_data(doctype, from_source)
    self.source_name=from_source
    docnamestr = docname('') + doctype
    Store.flash_data(docnamestr)
  end
  
  def rename(srcdoctype,dstdoctype)
    Store.rename(docname(srcdoctype),docname(dstdoctype))
  end
  
  # Generate the fully-qualified docname
  def docname(doctype)
    "#{self.class.class_prefix(self.class)}:#{self.app_id}:#{self.doc_suffix(doctype)}"
  end
  
  # Update count for a given document
  def update_count(doctype,count)
    name = docname(doctype)
    value = Store.db.get(name).to_i + count
    Store.db.set(name,value < 0 ? 0 : value) 
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
rhosync-2.1.18.beta2 lib/rhosync/document.rb
rhosync-2.1.18.beta1 lib/rhosync/document.rb
rhosync-2.1.17 lib/rhosync/document.rb
rhosync-2.1.17.beta7 lib/rhosync/document.rb
rhosync-2.1.17.beta6 lib/rhosync/document.rb
rhosync-2.1.17.beta5 lib/rhosync/document.rb
rhosync-2.1.17.beta4 lib/rhosync/document.rb
rhosync-2.1.17.beta3 lib/rhosync/document.rb
rhosync-2.1.17.beta2 lib/rhosync/document.rb
rhosync-2.1.17.beta1 lib/rhosync/document.rb
rhosync-2.1.16 lib/rhosync/document.rb
rhosync-2.1.15 lib/rhosync/document.rb
rhosync-2.1.14 lib/rhosync/document.rb
rhosync-2.1.13 lib/rhosync/document.rb
rhosync-2.1.12 lib/rhosync/document.rb
rhosync-2.1.11 lib/rhosync/document.rb