Changeset 1476

Show
Ignore:
Timestamp:
04/08/08 12:11:58 (5 months ago)
Author:
dbryson
Message:


Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • hive/trunk/data_webapp/app/models/bee_job.rb

    r1441 r1476  
    33  serialize :job_data 
    44   
    5   # Pull a job from the database 
     5  # Pull a job from the database used by the worker bee 
    66  def self.get_job 
    7     result = nil 
    8     job = find(:first, :order => "created_at DESC") 
    9     if job 
    10       jt = job.job_type 
    11       data = job.job_data 
    12       result = clean_data(jt,data) 
    13     end 
    14     result 
     7    # Get the oldest jobs first 
     8    job = find(:first, :order => "created_at ASC") 
    159  end 
    1610   
    17   def self.clean_data(jt,data
     11  def self.clean_data(jt,data,cid
    1812    case jt 
    1913    when "client" 
    2014      # remove id 
    2115      data.delete('id') 
    22       return [jt,data] 
     16      return data 
    2317    when "fingerprint" 
    24       client_id = data["client_id"] 
    25       c = Client.find(client_id) 
    26       data["cid"] = c.cid 
     18      data["cid"] = cid 
    2719      data.delete("client_id") 
    28       return [jt,data] 
     20      return data 
    2921    when "history_urls" 
    30       # same as fingerprint 
    31       client_id = data["client_id"] 
    32       c = Client.find(client_id) 
    33       data["cid"] = c.cid 
    3422      data.delete("client_id") 
    3523       
     
    3927        obj.delete("client_id") 
    4028      end 
    41       return [jt,data]  
     29      return data  
    4230    else 
    4331      return nil 
     
    4735  # Add a job. This is called from the hc_controller 
    4836  # type = client | fingerprint | history_url 
    49   # data is the hash table from the manager 
    50   def self.add_job(type,data)       
    51     BeeJob.create(:job_type => type, :job_data => data) 
     37  # data is the raw hash table from the manager 
     38  def self.add_job(job_type,data,cid=nil) 
     39    d = clean_data(job_type,data,cid) 
     40    if d 
     41      BeeJob.create(:job_type => job_type, :job_data => d) 
     42    end 
    5243  end 
    5344end