# File lib/openshift-origin-controller/app/models/cloud_user.rb, line 169
  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