Commit 82c8c42aee8d774053198b4fa4d0e4abc7011a70

Authored by randx
1 parent 11e4709f

Move all serialization to marshall

app/models/event.rb
... ... @@ -14,7 +14,8 @@ class Event < ActiveRecord::Base
14 14 belongs_to :project
15 15 belongs_to :target, :polymorphic => true
16 16  
17   - serialize :data, GitlabSerialize.new
  17 + # For Hash only
  18 + serialize :data
18 19  
19 20 scope :recent, order("created_at DESC")
20 21 scope :code_push, where(:action => Pushed)
... ... @@ -104,6 +105,14 @@ class Event < ActiveRecord::Base
104 105 delegate :name, :email, :to => :author, :prefix => true, :allow_nil => true
105 106 delegate :title, :to => :issue, :prefix => true, :allow_nil => true
106 107 delegate :title, :to => :merge_request, :prefix => true, :allow_nil => true
  108 +
  109 + def load obj
  110 + Marshal.load obj
  111 + end
  112 +
  113 + def dump obj
  114 + Marshal.dump obj
  115 + end
107 116 end
108 117 # == Schema Information
109 118 #
... ...
app/models/gitlab_serialize.rb
... ... @@ -1,23 +0,0 @@
1   -class GitlabSerialize
2   - # Called to deserialize data to ruby object.
3   - def load(data)
4   - hash = parse_data(data)
5   - hash = HashWithIndifferentAccess.new(hash) if hash
6   - hash
7   - end
8   -
9   - def parse_data(data)
10   - JSON.load(data)
11   - rescue JSON::ParserError
12   - begin
13   - YAML.load(data)
14   - rescue Psych::SyntaxError
15   - nil
16   - end
17   - end
18   -
19   - # Called to convert from ruby object to serialized data.
20   - def dump(obj)
21   - JSON.dump(obj)
22   - end
23   -end
app/models/merge_request.rb
... ... @@ -144,6 +144,14 @@ class MergeRequest < ActiveRecord::Base
144 144 :author_id => user_id
145 145 )
146 146 end
  147 +
  148 + def load obj
  149 + Marshal.load obj
  150 + end
  151 +
  152 + def dump obj
  153 + Marshal.dump obj
  154 + end
147 155 end
148 156 # == Schema Information
149 157 #
... ...