Description:
renamed ip to host in GraderProcess
git-svn-id: http://theory.cpe.ku.ac.th/grader/web/trunk@64 6386c4cd-e34a-4fa8-8920-d93eb39b512e
Commit status:
[Not Reviewed]
References:
Diff options:
Comments:
0 Commit comments
0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
r34:5e680c886b7e - - 6 files changed: 35 inserted, 11 deleted
@@ -0,0 +1,9 | |||
|
1 | + class RenameGraderProcessColumnIpToHost < ActiveRecord::Migration | |
|
2 | + def self.up | |
|
3 | + rename_column :grader_processes, :ip, :host | |
|
4 | + end | |
|
5 | + | |
|
6 | + def self.down | |
|
7 | + rename_column :grader_processes, :host, :ip | |
|
8 | + end | |
|
9 | + end |
@@ -1,27 +1,27 | |||
|
1 | 1 | class GraderProcess < ActiveRecord::Base |
|
2 | 2 | |
|
3 | 3 | belongs_to :task |
|
4 | 4 | |
|
5 |
- def self.find_by_ |
|
|
5 | + def self.find_by_host_and_pid(host,pid) | |
|
6 | 6 | return GraderProcess.find(:first, |
|
7 | 7 | :conditions => { |
|
8 |
- : |
|
|
8 | + :host => host, | |
|
9 | 9 | :pid => pid |
|
10 | 10 | }) |
|
11 | 11 | end |
|
12 | - | |
|
13 |
- def self.register( |
|
|
14 |
- grader = GraderProcess.find_by_ |
|
|
12 | + | |
|
13 | + def self.register(host,pid,mode) | |
|
14 | + grader = GraderProcess.find_by_host_and_pid(host,pid) | |
|
15 | 15 | if grader |
|
16 | 16 | grader.mode = mode |
|
17 | 17 | grader.active = nil |
|
18 | 18 | grader.task_id = nil |
|
19 | 19 | grader.save |
|
20 | 20 | else |
|
21 |
- grader = GraderProcess.create(: |
|
|
21 | + grader = GraderProcess.create(:host => host, | |
|
22 | 22 | :pid => pid, |
|
23 | 23 | :mode => mode) |
|
24 | 24 | end |
|
25 | 25 | grader |
|
26 | 26 | end |
|
27 | 27 |
@@ -5,20 +5,35 | |||
|
5 | 5 | STATUS_COMPLETE = 2 |
|
6 | 6 | |
|
7 | 7 | def status_inqueue |
|
8 | 8 | self.status = Task::STATUS_INQUEUE |
|
9 | 9 | end |
|
10 | 10 | |
|
11 | + def status_inqueue! | |
|
12 | + status_inqueue | |
|
13 | + self.save | |
|
14 | + end | |
|
15 | + | |
|
11 | 16 | def status_grading |
|
12 | 17 | self.status = Task::STATUS_GRADING |
|
13 | 18 | end |
|
14 | 19 | |
|
20 | + def status_grading! | |
|
21 | + status_grading | |
|
22 | + self.save | |
|
23 | + end | |
|
24 | + | |
|
15 | 25 | def status_complete |
|
16 | 26 | self.status = Task::STATUS_COMPLETE |
|
17 | 27 | end |
|
18 | 28 | |
|
29 | + def status_complete! | |
|
30 | + status_complete | |
|
31 | + self.save | |
|
32 | + end | |
|
33 | + | |
|
19 | 34 | def self.get_inqueue_and_change_status(status) |
|
20 | 35 | task = nil |
|
21 | 36 | begin |
|
22 | 37 | Task.transaction do |
|
23 | 38 | task = Task.find(:first, |
|
24 | 39 | :order => "created_at", |
@@ -1,8 +1,8 | |||
|
1 | 1 | |
|
2 |
- %td= grader. |
|
|
2 | + %td= grader.host | |
|
3 | 3 | %td= grader.pid |
|
4 | 4 | %td= grader.updated_at.strftime("%H:%M:%S") if grader.updated_at!=nil |
|
5 | 5 | %td |
|
6 | 6 | - if grader.task_id==nil |
|
7 | 7 | \- |
|
8 | 8 | - else |
@@ -1,10 +1,10 | |||
|
1 | 1 | |
|
2 | 2 | %table.graders |
|
3 | 3 | %tr |
|
4 |
- %th |
|
|
4 | + %th host | |
|
5 | 5 | %th pid |
|
6 | 6 | %th last updated |
|
7 | 7 | %th task |
|
8 | 8 | - grader_list.each do |grader| |
|
9 | 9 | - if grader.active |
|
10 | 10 | - c = 'active' |
@@ -6,25 +6,25 | |||
|
6 | 6 | # to create the application database on another system, you should be using db:schema:load, not running |
|
7 | 7 | # all the migrations from scratch. The latter is a flawed and unsustainable approach (the more migrations |
|
8 | 8 | # you'll amass, the slower it'll run and the greater likelihood for issues). |
|
9 | 9 | # |
|
10 | 10 | # It's strongly recommended to check this file into your version control system. |
|
11 | 11 | |
|
12 |
- ActiveRecord::Schema.define(:version => 1 |
|
|
12 | + ActiveRecord::Schema.define(:version => 17) do | |
|
13 | 13 | |
|
14 | 14 | create_table "grader_processes", :force => true do |t| |
|
15 |
- t.string " |
|
|
15 | + t.string "host", :limit => 20 | |
|
16 | 16 | t.integer "pid" |
|
17 | 17 | t.string "mode" |
|
18 | 18 | t.boolean "active" |
|
19 | 19 | t.datetime "created_at" |
|
20 | 20 | t.datetime "updated_at" |
|
21 | 21 | t.integer "task_id" |
|
22 | 22 | end |
|
23 | 23 | |
|
24 |
- add_index "grader_processes", [" |
|
|
24 | + add_index "grader_processes", ["host", "pid"], :name => "index_grader_processes_on_ip_and_pid" | |
|
25 | 25 | |
|
26 | 26 | create_table "languages", :force => true do |t| |
|
27 | 27 | t.string "name", :limit => 10 |
|
28 | 28 | t.string "pretty_name" |
|
29 | 29 | t.string "ext", :limit => 10 |
|
30 | 30 | end |
You need to be logged in to leave comments.
Login now