22 lines
1.1 KiB
Ruby
22 lines
1.1 KiB
Ruby
|
|
module JamRuby
|
||
|
|
class IcecastMasterServerRelay < ActiveRecord::Base
|
||
|
|
|
||
|
|
has_many :servers, :class_name => "JamRuby::IcecastServer", :inverse_of => :master_relay, :foreign_key => "master_relay_id"
|
||
|
|
|
||
|
|
validates :master_server, presence: true, length: {minimum: 1}
|
||
|
|
validates :master_server_port, presence: true, numericality: {only_integer: true}, length: {in: 1..65535}
|
||
|
|
validates :master_update_interval, presence: true, numericality: {only_integer: true}, length: {in: 1..1200}
|
||
|
|
validates :master_username, presence: true, length: {minimum: 5}
|
||
|
|
validates :master_password, presence: true, length: {minimum: 5}
|
||
|
|
validates :relays_on_demand, :inclusion => {:in => [true, false]}
|
||
|
|
|
||
|
|
def dumpXml(builder)
|
||
|
|
builder.tag! 'master-server', master_server
|
||
|
|
builder.tag! 'master-server-port', master_server_port
|
||
|
|
builder.tag! 'master-update-interval', master_update_interval
|
||
|
|
builder.tag! 'master-username', master_username
|
||
|
|
builder.tag! 'master-password', master_password
|
||
|
|
builder.tag! 'relays-on-demand', relays_on_demand ? '1' : '0'
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|