states.rb revision 6097dbf238b09e567fd30f7dd8fd2b6974f74259
be6ad6e46ecb8c7126b421819046e7f4857a2babTimo Sirainen# * processing
be6ad6e46ecb8c7126b421819046e7f4857a2babTimo Sirainen after_save :after_update_state, if: :change_applicable?
be6ad6e46ecb8c7126b421819046e7f4857a2babTimo Sirainen if (ind=lines.index("*** Error:")) and (out = lines[ind+1]).present?
be6ad6e46ecb8c7126b421819046e7f4857a2babTimo Sirainen while lines[i] and !lines[i].include?("hets: user error") do
be6ad6e46ecb8c7126b421819046e7f4857a2babTimo Sirainen msg << out.sub(URI.regexp,"...").sub(/ \/[A-Za-z0-9\/.]*/," ...")
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen elsif last_error.include?("exited with status")
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen msg << last_error[0,50]+" ... "+last_error.match("exited with status.*")[0]
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen msg << lines.first
3281669db44d09a087a203201248abbc81b3cc1aTimo Sirainen msg.join(": ")
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen def after_update_state
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen ontology.state = state
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen ontology.save!
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen if ontology.distributed?
f1ed4fa248aaf6841ba638b9d66b2738d9f7aa18Timo Sirainen ontology.children.update_all(state: ontology.state)