def self.hash_to_obj(hash)
apps = []
if hash["apps"]
hash["apps"].each do |app_hash|
app = Application.hash_to_obj(app_hash)
apps.push(app)
end
hash.delete("apps")
end
domains = []
if hash["domains"]
hash["domains"].each do |domain_hash|
domain = Domain.hash_to_obj(domain_hash)
domains.push(domain)
end
hash.delete("apps")
end
usage_records = []
if hash["usage_records"]
hash["usage_records"].each do |usage_hash|
usage_record = UsageRecord.hash_to_obj(usage_hash)
usage_records.push(usage_record)
end
hash.delete("usage_records")
end
user = super(hash)
user.applications = apps
apps.each do |app|
app.user = user
app.reset_state
end
user.domains = domains
domains.each do |domain|
domain.user = user
end
user.usage_records = usage_records
usage_records.each do |usage_record|
usage_record.user = user
end
user
end