2014-01-07 20:29:40 +00:00
|
|
|
module JamRuby
|
|
|
|
|
class IcecastLimit < ActiveRecord::Base
|
2014-01-14 21:22:05 +00:00
|
|
|
include JAmXml
|
2014-01-07 20:29:40 +00:00
|
|
|
|
|
|
|
|
self.primary_key = 'id'
|
|
|
|
|
|
2014-01-10 21:02:52 +00:00
|
|
|
attr_accessible :clients, :sources, :queue_size, :client_timeout, :header_timeout, :source_timeout, :burst_size
|
|
|
|
|
|
2014-01-14 21:22:05 +00:00
|
|
|
validates :clients, numericality: {only_integer: true}, length: {in: 1..15000}
|
|
|
|
|
|
2014-01-07 20:29:40 +00:00
|
|
|
|
2014-01-10 21:02:52 +00:00
|
|
|
after_initialize :init
|
2014-01-10 23:53:16 +00:00
|
|
|
|
2014-01-10 21:02:52 +00:00
|
|
|
|
|
|
|
|
def init
|
|
|
|
|
self.clients ||= 10000
|
|
|
|
|
self.sources ||= 1000
|
|
|
|
|
self.queue_size ||= 102400
|
|
|
|
|
self.client_timeout ||= 30
|
|
|
|
|
self.header_timeout ||= 15
|
|
|
|
|
self.source_timeout ||= 10
|
|
|
|
|
self.burst_size ||= 65536
|
|
|
|
|
end
|
2014-01-07 22:27:00 +00:00
|
|
|
|
2014-01-14 21:22:05 +00:00
|
|
|
|
2014-01-10 21:02:52 +00:00
|
|
|
def dumpXml (ident=1, output=$stdout)
|
2014-01-14 21:22:05 +00:00
|
|
|
hash = Hash["clients" => self.clients,
|
|
|
|
|
"sources" => self.sources,
|
|
|
|
|
"queue_size" => self.queue_size,
|
|
|
|
|
"client_timeout" => self.client_timeout,
|
|
|
|
|
"header_timeout" => self.header_timeout]
|
|
|
|
|
hash.merge! "source_timeout" => self.source_timeout,
|
|
|
|
|
"burst_size" => self.burst_size
|
|
|
|
|
self.jdumpXml(hash, "limits", ident, output)
|
2014-01-07 22:27:00 +00:00
|
|
|
end
|
2014-01-07 20:29:40 +00:00
|
|
|
|
|
|
|
|
end
|
2014-01-14 21:24:45 +00:00
|
|
|
end
|