lib/ixtlan/babel/factory.rb in ixtlan-babel-0.3.3 vs lib/ixtlan/babel/factory.rb in ixtlan-babel-0.3.4

- old
+ new

@@ -16,10 +16,11 @@ # FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # +require 'ixtlan/babel/dm_validation_errors_serializer' if defined? DataMapper module Ixtlan module Babel class Factory NANOSECONDS_IN_DAY = 86400*10**6 @@ -54,10 +55,10 @@ end def new_serializer( resource ) if resource.respond_to?(:model) model = resource.model - elsif resource.respond_to? :collect + elsif resource.respond_to?( :collect) && !resource.respond_to?( :to_hash) if resource.empty? return EmptyArraySerializer.new else r = resource.first model = r.respond_to?( :model ) ? r.model : r.class