<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -110,7 +110,7 @@ module StrokeDB
         case meta
         when Document
           _delete meta
-          _module = StrokeDB::Document.collect_meta_modules(@document.store, meta).first
+          _module = MetaModulesCollector.new(@document.store, meta).collect!.first
         when Meta
           _delete meta.document(@document.store)
           _module = meta
@@ -134,7 +134,7 @@ module StrokeDB
         case meta
         when Document
           push meta
-          _module = StrokeDB::Document.collect_meta_modules(@document.store, meta).first
+          _module = MetaModulesCollector.new(@document.store, meta).collect!.first
         when Meta
           push meta.document(@document.store)
           _module = meta
@@ -342,7 +342,7 @@ module StrokeDB
     def self.from_raw(store, raw_slots, opts = {}, &amp;block) #:nodoc:
       doc = new(store, raw_slots, true, &amp;block)
 
-      collect_meta_modules(store, raw_slots[Meta.meta_uuid]).each do |meta_module|
+      MetaModulesCollector.new(store, raw_slots[Meta.meta_uuid]).collect!.each do |meta_module|
         unless doc.is_a? meta_module
           doc.extend(meta_module)
         end
@@ -715,7 +715,7 @@ module StrokeDB
           meta_names &lt;&lt; @subject[:name]
         end
 
-        meta_names
+        meta_names.map { |m| m.is_a?(String) ? (m.constantize rescue nil) : m }.compact
       end
 
       def lookup_version_for_meta(meta)
@@ -739,17 +739,6 @@ module StrokeDB
       end
     end
 
-
-
-    # returns an array of meta modules (as constants) for a given something
-    # (a document reference, a document itself, or an array of the former)
-    def self.collect_meta_modules(store, meta) #:nodoc:
-      @collector = MetaModulesCollector.new(store, meta)
-      meta_names = @collector.collect!
-
-      meta_names.map { |m| m.is_a?(String) ? (m.constantize rescue nil) : m }.compact
-    end
-
     def generate_new_version!
       self.version = Util.random_uuid
     end</diff>
      <filename>lib/strokedb/document.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>70bd2f5d26937659ae299c333f890a6baece162a</id>
    </parent>
    <parent>
      <id>6e50edd56e8868c86bc72a753bbefd408c85461d</id>
    </parent>
  </parents>
  <author>
    <name>Yurii Rashkovskii</name>
    <email>yrashk@idbns.com</email>
  </author>
  <url>http://github.com/yrashk/strokedb/commit/75b660e1520a646ff028dcce34abf6fd4c880820</url>
  <id>75b660e1520a646ff028dcce34abf6fd4c880820</id>
  <committed-date>2008-05-25T00:24:26-07:00</committed-date>
  <authored-date>2008-05-25T00:24:26-07:00</authored-date>
  <message>Merge branch 'master' of git://github.com/witlessbird/strokedb</message>
  <tree>23220383ff76a6ba2f60ecad63faa3e2311d71d6</tree>
  <committer>
    <name>Yurii Rashkovskii</name>
    <email>yrashk@idbns.com</email>
  </committer>
</commit>
