Module: MaimaiNet::Client::ConnectionMaintenanceSafety

Defined in:
lib/maimai_net/client.rb

Instance Method Summary collapse

Instance Method Details

#maintenance_periodRange(Time, Time)



519
520
521
522
523
524
525
526
527
# File 'lib/maimai_net/client.rb', line 519

def maintenance_period
  ctime = Time.now
  atime = ctime.dup.localtime(32400)
  start_mt = Time.new(
    atime.year, atime.month, atime.day,
    4, 0, 0, atime.utc_offset,
  ).localtime(ctime.utc_offset)
  (start_mt)...(start_mt + 10_800)
end

#send_request(method, url, data, **opts) ⇒ Object

prevents connection during maintenance period.

Raises:



531
532
533
534
535
536
537
# File 'lib/maimai_net/client.rb', line 531

def send_request(method, url, data, **opts)
  ctime = Time.now
  period = maintenance_period
  fail Error::RoutineMaintenance, period if period.include?(ctime)

  super
end